From 7ef471220ddf7b88d1737092376a7e6cb2e0613a Mon Sep 17 00:00:00 2001 From: Dmitry Timoshkov Date: Tue, 24 Jun 2008 16:12:14 +0900 Subject: [PATCH] gdi32: Don't cache glyph metrics if they have a custom transformation. --- dlls/gdi32/freetype.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c index 4782d664c9e..01c9530d61f 100644 --- a/dlls/gdi32/freetype.c +++ b/dlls/gdi32/freetype.c @@ -4473,7 +4473,12 @@ DWORD WineEngGetGlyphOutline(GdiFont *incoming_font, UINT glyph, UINT format, lpgm->gmptGlyphOrigin.x = left >> 6; lpgm->gmptGlyphOrigin.y = top >> 6; - if(format == GGO_METRICS || format == GGO_BITMAP || format == WINE_GGO_GRAY16_BITMAP) + TRACE("%u,%u,%s,%d,%d\n", lpgm->gmBlackBoxX, lpgm->gmBlackBoxY, + wine_dbgstr_point(&lpgm->gmptGlyphOrigin), + lpgm->gmCellIncX, lpgm->gmCellIncY); + + if ((format == GGO_METRICS || format == GGO_BITMAP || format == WINE_GGO_GRAY16_BITMAP) && + (!lpmat || is_identity_MAT2(lpmat))) /* don't cache custom transforms */ { FONT_GM(font,original_index)->gm = *lpgm; FONT_GM(font,original_index)->adv = adv; -- 2.11.4.GIT