summaryrefslogtreecommitdiff
path: root/src/base
diff options
context:
space:
mode:
authorsuzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>2010-11-04 23:26:11 +0900
committersuzuki toshiya <mpsuzuki@hiroshima-u.ac.jp>2010-11-04 23:26:11 +0900
commitac09390afcfaf2c63b75ffee5c0759e29359f9ac (patch)
tree99bcc5f06f6ca869f576b3b7b571342bb3c20433 /src/base
parentb72e046098edd0a93992a251759e6bfffea74e78 (diff)
[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.
Diffstat (limited to 'src/base')
-rw-r--r--src/base/ftobjs.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/src/base/ftobjs.c b/src/base/ftobjs.c
index d12a71bb..cb44b8cc 100644
--- 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;