ref: ac09390afcfaf2c63b75ffee5c0759e29359f9ac
parent: b72e046098edd0a93992a251759e6bfffea74e78
author: suzuki toshiya <[email protected]>
date: Thu Nov 4 19:26:11 EDT 2010
[UVS] Fix find_variant_selector_charmap(), Savannah bug #31545. Since 2010-07-04, find_variant_selector_charmap() returns the first cmap subtable always under rogue-compatible configuration, it causes NULL pointer dereference and make UVS-related functions crashed. * src/base/ftobjs.c (Fix find_variant_selector_charmap): Returns UVS cmap correctly.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+2010-11-04 suzuki toshiya <[email protected]>
+
+ [UVS] Fix find_variant_selector_charmap(), Savannah bug #31545.
+
+ Since 2010-07-04, find_variant_selector_charmap() returns
+ the first cmap subtable always under rogue-compatible
+ configuration, it causes NULL pointer dereference and
+ make UVS-related functions crashed.
+
+ * src/base/ftobjs.c (Fix find_variant_selector_charmap):
+ Returns UVS cmap correctly.
+
2010-11-01 Alexei Podtelezhnikov <[email protected]>
[ftsmooth] Improve rendering.
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -1062,6 +1062,7 @@
if ( cur[0]->platform_id == TT_PLATFORM_APPLE_UNICODE &&
cur[0]->encoding_id == TT_APPLE_ID_VARIANT_SELECTOR &&
FT_Get_CMap_Format( cur[0] ) == 14 )
+ {
#ifdef FT_MAX_CHARMAP_CACHEABLE
if ( cur - first > FT_MAX_CHARMAP_CACHEABLE )
{
@@ -1071,6 +1072,7 @@
}
#endif
return cur[0];
+ }
}
return NULL;