From 617788c107775973c8fe287ffb8ca28719cd2fe5 Mon Sep 17 00:00:00 2001 From: Jjgod Jiang Date: Sat, 25 Apr 2015 13:49:46 +0000 Subject: Be more permissive about CFF dict parsing Ignore CFF dict with unknown opcode instead of treating it as an error and immediately bail out. git-svn-id: svn://tug.org/texlive/trunk@37046 c570f23f-e606-0410-a88d-b1316a301751 --- Build/source/texk/dvipdfm-x/ChangeLog | 5 +++++ Build/source/texk/dvipdfm-x/cff_dict.c | 3 ++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/Build/source/texk/dvipdfm-x/ChangeLog b/Build/source/texk/dvipdfm-x/ChangeLog index 279e04fa8bb..edbfdbc02c1 100644 --- a/Build/source/texk/dvipdfm-x/ChangeLog +++ b/Build/source/texk/dvipdfm-x/ChangeLog @@ -1,3 +1,8 @@ +2015-04-25 Jiang Jiang + + * cff_dict.c: Be more permissive in CFF dict parsing, fix Yuppy SC + and Yuppy TC fonts support. + 2015-04-25 Jiang Jiang * sfnt.c: Fix Mac TrueType font support. diff --git a/Build/source/texk/dvipdfm-x/cff_dict.c b/Build/source/texk/dvipdfm-x/cff_dict.c index d3543acf4db..8c30b7d13ab 100644 --- a/Build/source/texk/dvipdfm-x/cff_dict.c +++ b/Build/source/texk/dvipdfm-x/cff_dict.c @@ -301,7 +301,8 @@ static void add_dict (cff_dict *dict, argtype = dict_operator[id].argtype; if (dict_operator[id].opname == NULL || argtype < 0) { - *status = CFF_ERROR_PARSE_ERROR; + /* YuppySC-Regular.otf from OS X for instance uses op id 37, simply ignore + this dict instead of treat it as parsing error. */ return; } -- cgit v1.2.3