gdi32: Preserve the GGO_UNHINTED bits until used.

Fix a regression caused by 044315c0b3.

Signed-off-by: Byeongsik Jeon <bsjeon@hanmail.net>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Byeongsik Jeon 2021-01-11 13:18:42 +09:00 committed by Alexandre Julliard
parent dac655abce
commit f026739564
2 changed files with 3 additions and 2 deletions

View File

@ -2955,6 +2955,7 @@ static DWORD get_glyph_outline( struct gdi_font *font, UINT glyph, UINT format,
/* Windows bitmap font, e.g. Small Fonts, uses ANSI character code
as glyph index. "Treasure Adventure Game" depends on this. */
font_funcs->get_glyph_index( font, &index, FALSE );
format &= ~GGO_GLYPH_INDEX;
/* TODO: Window also turns off tategaki for glyphs passed in by index
if their unicode code points fall outside of the range that is
rotated. */
@ -2970,8 +2971,6 @@ static DWORD get_glyph_outline( struct gdi_font *font, UINT glyph, UINT format,
}
}
format &= ~(GGO_GLYPH_INDEX | GGO_UNHINTED);
if (mat && !memcmp( mat, &identity, sizeof(*mat) )) mat = NULL;
if (format == GGO_METRICS && !mat && get_gdi_font_glyph_metrics( font, index, &gm, &abc ))

View File

@ -3515,6 +3515,8 @@ static DWORD CDECL freetype_get_glyph_outline( struct gdi_font *font, UINT glyph
font->matrix.eM11, font->matrix.eM12,
font->matrix.eM21, font->matrix.eM22);
format &= ~GGO_UNHINTED;
needsTransform = get_transform_matrices( font, tategaki, lpmat, matrices );
vertical_metrics = (tategaki && FT_HAS_VERTICAL(ft_face));