diff --git a/ChangeLog b/ChangeLog index 0892bd0a9..33b02ff2a 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2008-05-17 Sam Hocevar + + * src/truetype/ttgload.c (TT_Load_Simple_Glyph): Handle zero-contour + glyphs correctly. Patch from Savannah bug #23277. + 2008-05-16 Werner Lemberg * docs/CHANGES: Updated. diff --git a/src/truetype/ttgload.c b/src/truetype/ttgload.c index 77b3fdd96..8f1c61b77 100644 --- a/src/truetype/ttgload.c +++ b/src/truetype/ttgload.c @@ -267,7 +267,11 @@ if ( n_contours >= 0xFFF || p + ( n_contours + 1 ) * 2 > limit ) goto Invalid_Outline; - cont[0] = prev_cont = FT_NEXT_USHORT( p ); + prev_cont = FT_NEXT_USHORT( p ); + + if ( n_contours > 0 ) + cont[0] = prev_cont; + for ( cont++; cont < cont_limit; cont++ ) { cont[0] = FT_NEXT_USHORT( p );