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 ) ) /**************************************************************************