Better handling of start of `eexec' section.

This fixes Savannah bug #28090.

* src/type1/t1parse.c (T1_Get_Private_Dict): Skip all whitespace
characters before start of `eexec' section.
This commit is contained in:
John Tytgat 2009-11-25 23:51:06 +01:00 committed by Werner Lemberg
parent a5e9dbd528
commit 087b7ea667
2 changed files with 20 additions and 9 deletions

View File

@ -1,3 +1,11 @@
2009-11-25 John Tytgat <John.Tytgat@esko.com>
Better handling of start of `eexec' section.
This fixes Savannah bug #28090.
* src/type1/t1parse.c (T1_Get_Private_Dict): Skip all whitespace
characters before start of `eexec' section.
2009-11-20 Werner Lemberg <wl@gnu.org>
Fix Savannah bug #27742.

View File

@ -397,15 +397,18 @@
T1_Skip_PS_Token( parser );
cur = parser->root.cursor;
if ( *cur == '\r' )
{
cur++;
if ( *cur == '\n' )
cur++;
}
else if ( *cur == '\n' )
cur++;
else
/* according to the Type1 spec, the first cipher byte must not be */
/* an ASCII whitespace character code (blank, tab, carriage return */
/* or line feed). We have seen Type 1 fonts with two line feed */
/* characters... So skip now all whitespace character codes. */
while ( cur < limit &&
( *cur == ' ' ||
*cur == '\t' ||
*cur == '\r' ||
*cur == '\n' ) )
++cur;
if ( cur >= limit )
{
FT_ERROR(( "T1_Get_Private_Dict:"
" `eexec' not properly terminated\n" ));