* src/type1/t1load.c (parse_dict): Handle synthetic
fonts properly. (parse_charstrings): Copy correct number of characters into `name_table'.
This commit is contained in:
parent
9ab9340d8b
commit
6165edf5d9
@ -2,6 +2,8 @@
|
||||
|
||||
* src/type1/t1load.c (parse_subrs, parse_dict): Handle synthetic
|
||||
fonts properly.
|
||||
(parse_charstrings): Copy correct number of characters into
|
||||
`name_table'.
|
||||
|
||||
2003-10-06 Werner Lemberg <wl@gnu.org>
|
||||
|
||||
|
@ -143,7 +143,7 @@
|
||||
|
||||
|
||||
if ( name && name[0] == glyph_name[0] &&
|
||||
ft_strcmp( name,glyph_name ) == 0 )
|
||||
ft_strcmp( name, glyph_name ) == 0 )
|
||||
return n;
|
||||
}
|
||||
|
||||
|
@ -1055,10 +1055,14 @@
|
||||
T1_Skip_PS_Token( parser ); /* `array' */
|
||||
T1_Skip_Spaces ( parser );
|
||||
|
||||
/* initialize subrs array */
|
||||
error = psaux->ps_table_funcs->init( table, num_subrs, memory );
|
||||
if ( error )
|
||||
goto Fail;
|
||||
/* initialize subrs array -- with synthetic fonts it is possible */
|
||||
/* we get here twice */
|
||||
if ( !loader->num_subrs )
|
||||
{
|
||||
error = psaux->ps_table_funcs->init( table, num_subrs, memory );
|
||||
if ( error )
|
||||
goto Fail;
|
||||
}
|
||||
|
||||
/* the format is simple: */
|
||||
/* */
|
||||
@ -1220,23 +1224,23 @@
|
||||
break;
|
||||
}
|
||||
|
||||
if ( *cur != '/' )
|
||||
T1_Skip_PS_Token( parser );
|
||||
else
|
||||
T1_Skip_PS_Token( parser );
|
||||
|
||||
if ( *cur == '/' )
|
||||
{
|
||||
FT_PtrDist len;
|
||||
|
||||
|
||||
T1_Skip_PS_Token( parser );
|
||||
if ( cur >= limit )
|
||||
if ( cur + 1 >= limit )
|
||||
{
|
||||
error = T1_Err_Invalid_File_Format;
|
||||
goto Fail;
|
||||
}
|
||||
|
||||
cur++; /* skip `/' */
|
||||
len = parser->root.cursor - cur;
|
||||
|
||||
error = T1_Add_Table( name_table, n, cur + 1, len + 1 );
|
||||
error = T1_Add_Table( name_table, n, cur, len + 1 );
|
||||
if ( error )
|
||||
goto Fail;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user