diff options
Diffstat (limited to 'Build/source')
3 files changed, 37 insertions, 2 deletions
diff --git a/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/ChangeLog b/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/ChangeLog index f27af44c960..663dac335fc 100644 --- a/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/ChangeLog +++ b/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/ChangeLog @@ -1,3 +1,8 @@ +2015-04-29 Peter Breitenlohner <peb@mppmu.mpg.de> + + * patch-01-cff (new): Backport patch from upstream + commit 3cc076dae by Jiang Jiang <gzjjgod@gmail.com>. + 2015-01-07 Peter Breitenlohner <peb@mppmu.mpg.de> Imported freetype-2.5.5 source tree from: diff --git a/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/TL-Changes b/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/TL-Changes index 9bf9a23bd9d..87255205014 100644 --- a/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/TL-Changes +++ b/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/TL-Changes @@ -13,5 +13,3 @@ Added newline at end of file: builds/wince/vc2005-ce/freetype.vcproj builds/windows/vc2005/freetype.vcproj -Backported a fix from git (3cc076dae): - src/cff/cffdrivr.c diff --git a/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/patch-01-cff b/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/patch-01-cff new file mode 100644 index 00000000000..266397bd2c7 --- /dev/null +++ b/Build/source/libs/freetype2/freetype-2.5.5-PATCHES/patch-01-cff @@ -0,0 +1,32 @@ +diff -ur -x config.guess -x config.sub -x install-sh freetype-2.5.5.orig/src/cff/cffdrivr.c freetype-2.5.5/src/cff/cffdrivr.c +--- freetype-2.5.5.orig/src/cff/cffdrivr.c 2014-12-06 23:29:09.000000000 +0100 ++++ freetype-2.5.5/src/cff/cffdrivr.c 2015-04-28 19:33:30.000000000 +0200 +@@ -383,9 +383,27 @@ + static const char* + cff_get_ps_name( CFF_Face face ) + { +- CFF_Font cff = (CFF_Font)face->extra.data; ++ CFF_Font cff = (CFF_Font)face->extra.data; ++ SFNT_Service sfnt = (SFNT_Service)face->sfnt; + + ++ /* following the OpenType specification 1.7, we return the name stored */ ++ /* in the `name' table for a CFF wrapped into an SFNT container */ ++ ++ if ( sfnt ) ++ { ++ FT_Library library = FT_FACE_LIBRARY( face ); ++ FT_Module sfnt_module = FT_Get_Module( library, "sfnt" ); ++ FT_Service_PsFontName service = ++ (FT_Service_PsFontName)ft_module_get_service( ++ sfnt_module, ++ FT_SERVICE_ID_POSTSCRIPT_FONT_NAME ); ++ ++ ++ if ( service && service->get_ps_font_name ) ++ return service->get_ps_font_name( FT_FACE( face ) ); ++ } ++ + return (const char*)cff->font_name; + } + |