From: Behdad Esfahbod Date: Thu, 9 Apr 2009 17:31:18 +0000 (-0400) Subject: Detect TrueType Collections by checking the font data header X-Git-Tag: 2.7.0~16 X-Git-Url: https://git.wh0rd.org/?p=fontconfig.git;a=commitdiff_plain;h=58aa0c8ee83f7bbd232401583106387517d216a9 Detect TrueType Collections by checking the font data header Instead of checking for "face->num_faces >1". (GNOME bug #577952) --- diff --git a/src/ftglue.c b/src/ftglue.c index 9caad7c..b337751 100644 --- a/src/ftglue.c +++ b/src/ftglue.c @@ -245,10 +245,17 @@ ftglue_face_goto_table( FT_Face face, /* parse the directory table directly, without using * FreeType's built-in data structures */ - FT_ULong offset = 0; + FT_ULong offset = 0, sig; FT_UInt count, nn; - if ( face->num_faces > 1 ) + if ( FILE_Seek( 0 ) || ACCESS_Frame( 4 ) ) + goto Exit; + + sig = GET_Tag4(); + + FORGET_Frame(); + + if ( sig == FT_MAKE_TAG( 't', 't', 'c', 'f' ) ) { /* deal with TrueType collections */