[truetype] Fix 32bit builds (#56404). Patch suggested by Ben Wagner <bungeman@google.com>. * src/truetype/ttgxvar.c (FT_fixedToInt, FT_fixedToFdot6): Remove harmful cast to unsigned type.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39
diff --git a/ChangeLog b/ChangeLog
index 5b6b559..3007333 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2019-05-29 Werner Lemberg <wl@gnu.org>
+
+ [truetype] Fix 32bit builds (#56404).
+
+ Patch suggested by Ben Wagner <bungeman@google.com>.
+
+ * src/truetype/ttgxvar.c (FT_fixedToInt, FT_fixedToFdot6): Remove
+ harmful cast to unsigned type.
+
2019-05-26 Ben Wagner <bungeman@google.com>
* src/truetype/ttgload.c (TT_Process_Simple_Glyph): Improve accuracy.
diff --git a/src/truetype/ttgxvar.c b/src/truetype/ttgxvar.c
index 33aec98..78d87dc 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 ) )
/**************************************************************************