diff options
author | Werner Lemberg <wl@gnu.org> | 2020-02-12 18:25:03 +0100 |
---|---|---|
committer | Werner Lemberg <wl@gnu.org> | 2020-02-12 18:25:03 +0100 |
commit | 8930cc96188c21a0ea5f7da7a6d00c4fefd86d3a (patch) | |
tree | 0543c515d5f5a5c5728f7f197e21a46147c61748 | |
parent | 4a19a53d5a89d13047b64c4972252e6af2e8badc (diff) | |
download | freetype2-8930cc96188c21a0ea5f7da7a6d00c4fefd86d3a.tar.gz |
* src/sfnt/ttcmap.c (tt_face_build_cmaps): Ignore version (#57708).
-rw-r--r-- | ChangeLog | 4 | ||||
-rw-r--r-- | src/sfnt/ttcmap.c | 18 |
2 files changed, 14 insertions, 8 deletions
@@ -1,3 +1,7 @@ +2020-02-12 Werner Lemberg <wl@gnu.org> + + * src/sfnt/ttcmap.c (tt_face_build_cmaps): Ignore version (#57708). + 2020-02-04 Werner Lemberg <wl@gnu.org> * src/truetype/ttinterp.c (TT_RunIns): Adjust loop counter (#57732). diff --git a/src/sfnt/ttcmap.c b/src/sfnt/ttcmap.c index a2ea1fbfa..2c34efb5c 100644 --- a/src/sfnt/ttcmap.c +++ b/src/sfnt/ttcmap.c @@ -3776,14 +3776,16 @@ if ( !p || face->cmap_size < 4 ) return FT_THROW( Invalid_Table ); - /* only recognize format 0 */ - if ( TT_NEXT_USHORT( p ) != 0 ) - { - FT_ERROR(( "tt_face_build_cmaps:" - " unsupported `cmap' table format = %d\n", - TT_PEEK_USHORT( p - 2 ) )); - return FT_THROW( Invalid_Table ); - } + /* Version 1.8.3 of the OpenType specification contains the following */ + /* (https://docs.microsoft.com/en-us/typography/opentype/spec/cmap): */ + /* */ + /* The 'cmap' table version number remains at 0x0000 for fonts that */ + /* make use of the newer subtable formats. */ + /* */ + /* This essentially means that a version format test is useless. */ + + /* ignore format */ + p += 2; num_cmaps = TT_NEXT_USHORT( p ); limit = table + face->cmap_size; |