[coretext] Fix more CGFloat double-promotion warnings
The warning is: warning: implicit conversion increases floating-point precision: 'CGFloat' (aka 'float') to 'double' [-Wdouble-promotion]
This commit is contained in:
parent
cd08c2528c
commit
8e53c7c125
@ -346,7 +346,7 @@ retry:
|
||||
const hb_coretext_font_data_t *data = font->data.coretext;
|
||||
if (unlikely (!data)) return nullptr;
|
||||
|
||||
if (fabs (CTFontGetSize ((CTFontRef) data) - (CGFloat) font->ptem) > .5)
|
||||
if (fabs (CTFontGetSize ((CTFontRef) data) - (CGFloat) font->ptem) > (CGFloat) .5)
|
||||
{
|
||||
/* XXX-MT-bug
|
||||
* Note that evaluating condition above can be dangerous if another thread
|
||||
@ -858,7 +858,7 @@ resize_and_retry:
|
||||
|
||||
buffer->len = 0;
|
||||
uint32_t status_and = ~0, status_or = 0;
|
||||
double advances_so_far = 0;
|
||||
CGFloat advances_so_far = 0;
|
||||
/* For right-to-left runs, CoreText returns the glyphs positioned such that
|
||||
* any trailing whitespace is to the left of (0,0). Adjust coordinate system
|
||||
* to fix for that. Test with any RTL string with trailing spaces.
|
||||
@ -880,10 +880,10 @@ resize_and_retry:
|
||||
status_or |= run_status;
|
||||
status_and &= run_status;
|
||||
DEBUG_MSG (CORETEXT, run, "CTRunStatus: %x", run_status);
|
||||
double run_advance = CTRunGetTypographicBounds (run, range_all, nullptr, nullptr, nullptr);
|
||||
CGFloat run_advance = CTRunGetTypographicBounds (run, range_all, nullptr, nullptr, nullptr);
|
||||
if (HB_DIRECTION_IS_VERTICAL (buffer->props.direction))
|
||||
run_advance = -run_advance;
|
||||
DEBUG_MSG (CORETEXT, run, "Run advance: %g", run_advance);
|
||||
DEBUG_MSG (CORETEXT, run, "Run advance: %g", (double) run_advance);
|
||||
|
||||
/* CoreText does automatic font fallback (AKA "cascading") for characters
|
||||
* not supported by the requested font, and provides no way to turn it off,
|
||||
@ -1062,7 +1062,7 @@ resize_and_retry:
|
||||
hb_position_t x_offset = (positions[0].x - advances_so_far) * x_mult;
|
||||
for (unsigned int j = 0; j < num_glyphs; j++)
|
||||
{
|
||||
double advance;
|
||||
CGFloat advance;
|
||||
if (likely (j + 1 < num_glyphs))
|
||||
advance = positions[j + 1].x - positions[j].x;
|
||||
else /* last glyph */
|
||||
@ -1078,7 +1078,7 @@ resize_and_retry:
|
||||
hb_position_t y_offset = (positions[0].y - advances_so_far) * y_mult;
|
||||
for (unsigned int j = 0; j < num_glyphs; j++)
|
||||
{
|
||||
double advance;
|
||||
CGFloat advance;
|
||||
if (likely (j + 1 < num_glyphs))
|
||||
advance = positions[j + 1].y - positions[j].y;
|
||||
else /* last glyph */
|
||||
|
Loading…
Reference in New Issue
Block a user