Dmitry Timoshkov : gdi32: Fix lfWidth before caching the font to avoid duplicate entries in the cache .
Module: wine Branch: master Commit: c5d07b7c228e3243e39859669b66a50c8871952b URL: http://source.winehq.org/git/wine.git/?a=commit;h=c5d07b7c228e3243e39859669b... Author: Dmitry Timoshkov <dmitry(a)codeweavers.com> Date: Mon Apr 7 21:23:55 2008 +0900 gdi32: Fix lfWidth before caching the font to avoid duplicate entries in the cache. --- dlls/gdi32/freetype.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-) diff --git a/dlls/gdi32/freetype.c b/dlls/gdi32/freetype.c index be8688a..b00bc71 100644 --- a/dlls/gdi32/freetype.c +++ b/dlls/gdi32/freetype.c @@ -3120,6 +3120,8 @@ GdiFont *WineEngCreateFontInstance(DC *dc, HFONT hfont) LeaveCriticalSection( &freetype_cs ); return NULL; } + lf.lfWidth = abs(lf.lfWidth); + can_use_bitmap = GetDeviceCaps(dc->hSelf, TEXTCAPS) & TC_RA_ABLE; TRACE("%s, h=%d, it=%d, weight=%d, PandF=%02x, charset=%d orient %d escapement %d\n", @@ -3382,7 +3384,7 @@ found: TRACE("Chosen: %s %s (%s/%p:%ld)\n", debugstr_w(family->FamilyName), debugstr_w(face->StyleName), face->file, face->font_data_ptr, face->face_index); - ret->aveWidth = height ? abs(lf.lfWidth) : 0; + ret->aveWidth = height ? lf.lfWidth : 0; if(!face->scalable) { /* Windows uses integer scaling factors for bitmap fonts */
participants (1)
-
Alexandre Julliard