Fix Savannah bug #28320.
There exist corrupt, subsetted fonts (embedded in PDF files) which contain a private dict that ends with an unterminated floating point number (no operator following). We now ignore this error (as acrobat does). * src/cff/cffparse.c (cff_parser_run): Don't emit a syntax error for unterminated floating point numbers.
This commit is contained in:
parent
94cdb3f045
commit
7bdc1d598d
12
ChangeLog
12
ChangeLog
|
@ -1,3 +1,15 @@
|
||||||
|
2009-12-18 Werner Lemberg <wl@gnu.org>
|
||||||
|
|
||||||
|
Fix Savannah bug #28320.
|
||||||
|
|
||||||
|
There exist corrupt, subsetted fonts (embedded in PDF files) which
|
||||||
|
contain a private dict that ends with an unterminated floating point
|
||||||
|
number (no operator following). We now ignore this error (as
|
||||||
|
acrobat does).
|
||||||
|
|
||||||
|
* src/cff/cffparse.c (cff_parser_run): Don't emit a syntax error for
|
||||||
|
unterminated floating point numbers.
|
||||||
|
|
||||||
2009-12-16 Werner Lemberg <wl@gnu.org>
|
2009-12-16 Werner Lemberg <wl@gnu.org>
|
||||||
|
|
||||||
Really fix compiler warnings.
|
Really fix compiler warnings.
|
||||||
|
|
|
@ -745,8 +745,10 @@
|
||||||
p++;
|
p++;
|
||||||
for (;;)
|
for (;;)
|
||||||
{
|
{
|
||||||
|
/* An unterminated floating point number at the */
|
||||||
|
/* end of a dictionary is invalid but harmless. */
|
||||||
if ( p >= limit )
|
if ( p >= limit )
|
||||||
goto Syntax_Error;
|
goto Exit;
|
||||||
v = p[0] >> 4;
|
v = p[0] >> 4;
|
||||||
if ( v == 15 )
|
if ( v == 15 )
|
||||||
break;
|
break;
|
||||||
|
|
Loading…
Reference in New Issue