diff --git a/pdf.c b/pdf.c index 40223ec66a066ad2310fa8f2108d9a02c0ec46a8..b46e3f0acf7f177b8f740c9fd1e75a7be8c2b4c5 100644 --- a/pdf.c +++ b/pdf.c @@ -1072,7 +1072,7 @@ ASCIIHexDecode(const Dict *parms, HBytes b, HParser *p) H_ARULE(hupper, h_ch_range('A', 'F')); H_RULE(ahexeod, h_ch('>')); H_RULE(hdigit, CHX(digit, hlower, hupper)); - H_RULE(hdigitpair, SEQ(h_many(CHX(lwchar,hdigit)),h_many(CHX(lwchar,hdigit)))); + H_RULE(hdigitpair, SEQ(OPT(h_many(lwchar)),hdigit,OPT(h_many(lwchar)),hdigit)); H_ARULE(ahextruncated, SEQ(hdigit,ahexeod)); H_RULE(hs_end, CHX(hdigitpair, ahextruncated));