Vincent Povirk : gdiplus: Do not create FontFamilies for bitmap fonts.

Alexandre Julliard julliard at winehq.org
Fri Apr 16 10:56:00 CDT 2010


Module: wine
Branch: master
Commit: 531219f84d0d6fa236283e5c3d061b5f752df793
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=531219f84d0d6fa236283e5c3d061b5f752df793

Author: Vincent Povirk <vincent at 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)




More information about the wine-cvs mailing list