From 49079ce297c1698139456d0d3664bf32674d0ee5 Mon Sep 17 00:00:00 2001 From: Werner Lemberg Date: Wed, 29 May 2019 08:08:53 +0200 Subject: [PATCH] [truetype] Fix 32bit builds (#56404). Patch suggested by Ben Wagner . * src/truetype/ttgxvar.c (FT_fixedToInt, FT_fixedToFdot6): Remove harmful cast to unsigned type. --- ChangeLog | 9 +++++++++ src/truetype/ttgxvar.c | 10 +++++----- 2 files changed, 14 insertions(+), 5 deletions(-) diff --git a/ChangeLog b/ChangeLog index 5b6b5597c..30073339d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,12 @@ +2019-05-29 Werner Lemberg + + [truetype] Fix 32bit builds (#56404). + + Patch suggested by Ben Wagner . + + * src/truetype/ttgxvar.c (FT_fixedToInt, FT_fixedToFdot6): Remove + harmful cast to unsigned type. + 2019-05-26 Ben Wagner * src/truetype/ttgload.c (TT_Process_Simple_Glyph): Improve accuracy. diff --git a/src/truetype/ttgxvar.c b/src/truetype/ttgxvar.c index 33aec980b..78d87dc09 100644 --- a/src/truetype/ttgxvar.c +++ b/src/truetype/ttgxvar.c @@ -72,12 +72,12 @@ ( (FT_Fixed)( (FT_ULong)(x) << 2 ) ) #define FT_intToFixed( i ) \ ( (FT_Fixed)( (FT_ULong)(i) << 16 ) ) -#define FT_fdot6ToFixed( i ) \ +#define FT_fdot6ToFixed( i ) \ ( (FT_Fixed)( (FT_ULong)(i) << 10 ) ) -#define FT_fixedToInt( x ) \ - ( (FT_Short)( ( (FT_ULong)(x) + 0x8000U ) >> 16 ) ) -#define FT_fixedToFdot6( x ) \ - ( (FT_Pos)( ( (FT_ULong)(x) + 0x200 ) >> 10 ) ) +#define FT_fixedToInt( x ) \ + ( (FT_Short)( ( (x) + 0x8000U ) >> 16 ) ) +#define FT_fixedToFdot6( x ) \ + ( (FT_Pos)( ( (x) + 0x200 ) >> 10 ) ) /**************************************************************************