diff --git a/ChangeLog b/ChangeLog index c42508c50..d723dfc4f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +2012-03-14 Huw Davies + + [sfnt] A refinement of the previous commit. + + * src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16, + tt_name_entry_ascii_from_other): Stop at null byte. + 2012-03-14 Huw Davies [sfnt] Add `name' table compatibility to MS Windows. diff --git a/src/sfnt/sfobjs.c b/src/sfnt/sfobjs.c index 3b9fd47f1..2bc4bd930 100644 --- a/src/sfnt/sfobjs.c +++ b/src/sfnt/sfobjs.c @@ -64,13 +64,17 @@ for ( n = 0; n < len; n++ ) { code = FT_NEXT_USHORT( read ); - if ( code != 0 && ( code < 32 || code > 127 ) ) + + if ( code == 0 ) + break; + + if ( code < 32 || code > 127 ) code = '?'; string[n] = (char)code; } - string[len] = 0; + string[n] = 0; return string; } @@ -95,13 +99,17 @@ for ( n = 0; n < len; n++ ) { code = *read++; - if ( code != 0 && ( code < 32 || code > 127 ) ) + + if ( code == 0 ) + break; + + if ( code < 32 || code > 127 ) code = '?'; string[n] = (char)code; } - string[len] = 0; + string[n] = 0; return string; }