Dmitry Timoshkov : gdi32: Don' t cache glyph metrics if they have a custom transformation.
Alexandre Julliard
julliard at winehq.org
Tue Jun 24 06:46:53 CDT 2008
Module: wine
Branch: master
Commit: 7ef471220ddf7b88d1737092376a7e6cb2e0613a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=7ef471220ddf7b88d1737092376a7e6cb2e0613a
Author: Dmitry Timoshkov <dmitry at codeweavers.com>
Date: Tue Jun 24 16:12:14 2008 +0900
gdi32: Don't cache glyph metrics if they have a custom transformation.
---
dlls/gdi32/freetype.c | 7 ++++++-
1 files changed, 6 insertions(+), 1 deletions(-)
diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c
index 4782d66..01c9530 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;
More information about the wine-cvs
mailing list