From 58cb3593358d50d05bb4025f7df378cb2587c015 Mon Sep 17 00:00:00 2001 From: suzuki toshiya Date: Sun, 1 May 2011 00:47:43 +0900 Subject: [PATCH] [truetype] Recalculate the sfnt table checksum always. * src/truetype/ttobjs.c (tt_get_sfnt_checksum): Recalculate the sfnt table checksum even if non-zero value is writte in the TrueType font header. Some bad PDF generators write wrong values. For detail, see examples and benchmark tests of the latency by recalculation: http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00091.html http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00096.html --- ChangeLog | 12 ++++++++++++ src/truetype/ttobjs.c | 2 ++ 2 files changed, 14 insertions(+) diff --git a/ChangeLog b/ChangeLog index fe645d4c3..02216927e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,15 @@ +2011-04-30 suzuki toshiya + + [truetype] Recalculate the sfnt table checksum always. + + * src/truetype/ttobjs.c (tt_get_sfnt_checksum): Recalculate + the sfnt table checksum even if non-zero value is writte in + the TrueType font header. Some bad PDF generators write + wrong values. For detail, see examples and benchmark tests + of the latency by recalculation: + http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00091.html + http://lists.gnu.org/archive/html/freetype-devel/2011-04/msg00096.html + 2011-04-30 suzuki toshiya [truetype] Register a set of tricky fonts, NEC FA family. diff --git a/src/truetype/ttobjs.c b/src/truetype/ttobjs.c index 11cd4b31e..942361c50 100644 --- a/src/truetype/ttobjs.c +++ b/src/truetype/ttobjs.c @@ -213,8 +213,10 @@ tt_get_sfnt_checksum( TT_Face face, FT_UShort i ) { +#if 0 /* if we believe the written value, use following part. */ if ( face->dir_tables[i].CheckSum ) return face->dir_tables[i].CheckSum; +#endif if ( !face->goto_table ) return 0;