gdi32: Don't try to get glyph index when default char is 0.
Fixes a regression from 5bdc6e0fe6
, this
is what the code was originally doing.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50175
Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
6245f07201
commit
06206f1628
|
@ -2601,7 +2601,7 @@ static UINT CDECL freetype_get_default_glyph( struct gdi_font *font )
|
|||
if ((pOS2 = pFT_Get_Sfnt_Table( ft_face, ft_sfnt_os2 )))
|
||||
{
|
||||
UINT glyph = pOS2->usDefaultChar;
|
||||
freetype_get_glyph_index( font, &glyph, TRUE );
|
||||
if (glyph) freetype_get_glyph_index( font, &glyph, TRUE );
|
||||
return glyph;
|
||||
}
|
||||
if (!pFT_Get_WinFNT_Header( ft_face, &winfnt )) return winfnt.default_char + winfnt.first_char;
|
||||
|
|
|
@ -1716,8 +1716,8 @@ static void test_GetGlyphIndices(void)
|
|||
testtext[0] = 'T';
|
||||
charcount = pGetGlyphIndicesW(hdc, testtext, (sizeof(testtext)/2)-1, glyphs, flags);
|
||||
ok(charcount == 5, "GetGlyphIndicesW count of glyphs should = 5 not %d\n", charcount);
|
||||
todo_wine ok(glyphs[0] == 0, "GetGlyphIndicesW for tmDefaultChar should be 0 not %04x\n", glyphs[0]);
|
||||
todo_wine ok(glyphs[4] == 0, "GetGlyphIndicesW should have returned 0 not %04x\n", glyphs[4]);
|
||||
ok(glyphs[0] == 0, "GetGlyphIndicesW for tmDefaultChar should be 0 not %04x\n", glyphs[0]);
|
||||
ok(glyphs[4] == 0, "GetGlyphIndicesW should have returned 0 not %04x\n", glyphs[4]);
|
||||
DeleteObject(SelectObject(hdc, hOldFont));
|
||||
|
||||
ret = pRemoveFontMemResourceEx(rsrc);
|
||||
|
|
Loading…
Reference in New Issue