ref: 9b1aab8d1eb78dd04339f59d8337f9eff3bd7678
parent: e6d0c1fb9c0a015162f536f887e6bab7af3ac1f8
author: suzuki toshiya <[email protected]>
date: Fri Jul 31 20:37:58 EDT 2009
sfnt: Cast a charcode to 32-bit in cmap format 12 parser.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,13 @@
2009-07-31 suzuki toshiya <[email protected]>
+ sfnt: Cast a charcode to 32-bit in cmap format 12 parser.
+
+ * src/sfnt/ttcmap.c (tt_cmap12_char_next):
+ Insert explicit cast from FT_UFast to FT_UInt32
+ for return value.
+
+2009-07-31 suzuki toshiya <[email protected]>
+
psaux: Fix a few casts to FT_Int32 value.
* src/psaux/t1decode.c (t1_decoder_parse_charstrings):
--- a/src/sfnt/ttcmap.c
+++ b/src/sfnt/ttcmap.c
@@ -2228,8 +2228,10 @@
if ( cmap12->valid )
{
gindex = cmap12->cur_gindex;
+
+ /* XXX: check cur_charcode overflow is expected */
if ( gindex )
- *pchar_code = cmap12->cur_charcode;
+ *pchar_code = (FT_UInt32)cmap12->cur_charcode;
}
else
gindex = 0;
@@ -2237,7 +2239,8 @@
else
gindex = tt_cmap12_char_map_binary( cmap, pchar_code, 1 );
- return gindex;
+ /* XXX: check gindex overflow is expected */
+ return (FT_UInt32)gindex;
}