Vincent Povirk : gdiplus: Do not create FontFamilies for bitmap fonts.
Module: wine Branch: master Commit: 531219f84d0d6fa236283e5c3d061b5f752df793 URL: http://source.winehq.org/git/wine.git/?a=commit;h=531219f84d0d6fa236283e5c3d... Author: Vincent Povirk <vincent(a)codeweavers.com> Date: Thu Apr 15 11:49:20 2010 -0500 gdiplus: Do not create FontFamilies for bitmap fonts. --- dlls/gdiplus/font.c | 5 ++++- dlls/gdiplus/tests/font.c | 3 --- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/dlls/gdiplus/font.c b/dlls/gdiplus/font.c index 0b7f9f6..3a29771 100644 --- a/dlls/gdiplus/font.c +++ b/dlls/gdiplus/font.c @@ -521,7 +521,7 @@ GpStatus WINGDIPAPI GdipGetFontHeightGivenDPI(GDIPCONST GpFont *font, REAL dpi, static INT CALLBACK is_font_installed_proc(const LOGFONTW *elf, const TEXTMETRICW *ntm, DWORD type, LPARAM lParam) { - if (!ntm) + if (!ntm || type == RASTER_FONTTYPE) { return 1; } @@ -966,6 +966,9 @@ static INT CALLBACK add_font_proc(const LOGFONTW *lfw, const TEXTMETRICW *ntm, GpFontCollection* fonts = (GpFontCollection*)lParam; int i; + if (type == RASTER_FONTTYPE) + return 1; + /* skip duplicates */ for (i=0; i<fonts->count; i++) if (strcmpiW(lfw->lfFaceName, fonts->FontFamilies[i]->FamilyName) == 0) diff --git a/dlls/gdiplus/tests/font.c b/dlls/gdiplus/tests/font.c index 1bf2c1e..80f11bc 100644 --- a/dlls/gdiplus/tests/font.c +++ b/dlls/gdiplus/tests/font.c @@ -192,12 +192,9 @@ static void test_fontfamily (void) expect (FontFamilyNotFound, stat); /* Bitmap fonts are not found */ -todo_wine -{ stat = GdipCreateFontFamilyFromName (MSSansSerif, NULL, &family); expect (FontFamilyNotFound, stat); if(stat == Ok) GdipDeleteFontFamily(family); -} stat = GdipCreateFontFamilyFromName (arial, NULL, &family); if(stat == FontFamilyNotFound)
participants (1)
-
Alexandre Julliard