gdi32: Improve detection of symbol charset for old truetype fonts.
Dmitry Timoshkov
dmitry at baikal.ru
Wed Nov 18 00:16:36 CST 2015
This patch uses same check for symbol charset that get_outline_text_metrics()
already does, and allows the font attached to the bug 33117 be correctly
recognized as a symbol ttf (like Windows does).
Signed-off-by: Dmitry Timoshkov <dmitry at baikal.ru>
---
dlls/gdi32/freetype.c | 7 +++----
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c
index 693a54d..a6c8097 100644
--- a/dlls/gdi32/freetype.c
+++ b/dlls/gdi32/freetype.c
@@ -1980,7 +1980,6 @@ static inline void get_bitmap_size( FT_Face ft_face, Bitmap_Size *face_size )
static inline void get_fontsig( FT_Face ft_face, FONTSIGNATURE *fs )
{
TT_OS2 *os2;
- FT_UInt dummy;
CHARSETINFO csi;
FT_WinFNT_HeaderRec winfnt_header;
int i;
@@ -1997,10 +1996,10 @@ static inline void get_fontsig( FT_Face ft_face, FONTSIGNATURE *fs )
if (os2->version == 0)
{
- if (pFT_Get_First_Char( ft_face, &dummy ) < 0x100)
- fs->fsCsb[0] = FS_LATIN1;
- else
+ if (os2->usFirstCharIndex >= 0xf000 && os2->usFirstCharIndex < 0xf100)
fs->fsCsb[0] = FS_SYMBOL;
+ else
+ fs->fsCsb[0] = FS_LATIN1;
}
else
{
--
2.6.3
More information about the wine-patches
mailing list