diff --git a/ChangeLog b/ChangeLog index f75048808..e2179fec1 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2002-04-17 Michael Jansson + + * src/type1/t1gload.c (T1_Compute_Max_Advance): fixed a small bug + that prevented the function to return the correct value. + 2002-04-16 Francesco Zappa Nardelli * src/pcf/pcfread (pcf_get_accell): Fix parsing of accelerator diff --git a/docs/CHANGES b/docs/CHANGES index 3fc0b6b3a..e818158d8 100644 --- a/docs/CHANGES +++ b/docs/CHANGES @@ -11,6 +11,10 @@ LATEST CHANGES BETWEEN 2.1.0 and 2.0.9 to rounding errors. The required vector computation routines have been optimized and placed within the "ttinterp.c" file. + - Fixed the parsing of accelerator tables in the PCF font driver + + - Fixed the Type1 glyph loader routine used to compute the font's + maximum advance width. II. NEW FEATURES diff --git a/src/type1/t1gload.c b/src/type1/t1gload.c index 7617b00bc..ecaccb218 100644 --- a/src/type1/t1gload.c +++ b/src/type1/t1gload.c @@ -103,16 +103,20 @@ decoder.subrs = type1->subrs; decoder.subrs_len = type1->subrs_len; + *max_advance = 0; + /* for each glyph, parse the glyph charstring and extract */ /* the advance width */ for ( glyph_index = 0; glyph_index < type1->num_glyphs; glyph_index++ ) { /* now get load the unscaled outline */ error = T1_Parse_Glyph( &decoder, glyph_index ); + if ( glyph_index == 0 || decoder.builder.advance.x > *max_advance ) + *max_advance = decoder.builder.advance.x; + /* ignore the error if one occured - skip to next glyph */ } - *max_advance = decoder.builder.advance.x; return T1_Err_Ok; }