[sfnt] Add `name' table compatibility to MS Windows.

* src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16,
tt_name_entry_ascii_from_other): Don't replace `\0' with question
marks when converting strings.
This commit is contained in:
Huw Davies 2012-03-14 14:44:46 +01:00 committed by Werner Lemberg
parent 9a55cb7a71
commit bf06b62a09
2 changed files with 11 additions and 3 deletions

View File

@ -1,3 +1,11 @@
2012-03-14 Huw Davies <huw@codeweavers.com>
[sfnt] Add `name' table compatibility to MS Windows.
* src/sfnt/sfobjs.c (tt_name_entry_ascii_from_utf16,
tt_name_entry_ascii_from_other): Don't replace `\0' with question
marks when converting strings.
2012-03-14 Werner Lemberg <wl@gnu.org> 2012-03-14 Werner Lemberg <wl@gnu.org>
Fix Savannah bug #35833. Fix Savannah bug #35833.

View File

@ -4,7 +4,7 @@
/* */ /* */
/* SFNT object management (base). */ /* SFNT object management (base). */
/* */ /* */
/* Copyright 1996-2008, 2010-2011 by */ /* Copyright 1996-2008, 2010-2012 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -64,7 +64,7 @@
for ( n = 0; n < len; n++ ) for ( n = 0; n < len; n++ )
{ {
code = FT_NEXT_USHORT( read ); code = FT_NEXT_USHORT( read );
if ( code < 32 || code > 127 ) if ( code != 0 && ( code < 32 || code > 127 ) )
code = '?'; code = '?';
string[n] = (char)code; string[n] = (char)code;
@ -95,7 +95,7 @@
for ( n = 0; n < len; n++ ) for ( n = 0; n < len; n++ )
{ {
code = *read++; code = *read++;
if ( code < 32 || code > 127 ) if ( code != 0 && ( code < 32 || code > 127 ) )
code = '?'; code = '?';
string[n] = (char)code; string[n] = (char)code;