[Gdiplus 02/16] test_fontfamily: Don't use a pointer-to-pointer construct. While we're changing almost every line, also choose a better variable name.

Adam Petaccia adam at tpetaccia.com
Wed Jul 2 12:24:36 CDT 2008


This patch avoids the extra dereferencing and memory allocation/free, for simplicity.
Also, as a side effect, it should help on Dan Kegel's report of font taking too long to valgrind.
---
 dlls/gdiplus/tests/font.c |   36 ++++++++++++------------------------
 1 files changed, 12 insertions(+), 24 deletions(-)

diff --git a/dlls/gdiplus/tests/font.c b/dlls/gdiplus/tests/font.c
index 1e18c67..59a6cb7 100644
--- a/dlls/gdiplus/tests/font.c
+++ b/dlls/gdiplus/tests/font.c
@@ -150,51 +150,39 @@ static void test_logfont(void)
 
 static void test_fontfamily (void)
 {
-    GpFontFamily** family = NULL;
-    WCHAR itsName[LF_FACESIZE];
+    GpFontFamily* FontFamily;
+    WCHAR FamilyName[LF_FACESIZE];
     GpStatus stat;
 
-    ZeroMemory(itsName, sizeof(itsName));
+    ZeroMemory(FamilyName, sizeof(FamilyName));
 
     /* FontFamily can not be NULL */
-    stat = GdipCreateFontFamilyFromName (arial , NULL, family);
+    stat = GdipCreateFontFamilyFromName (arial , NULL, NULL);
     expect (InvalidParameter, stat);
 
-    family = GdipAlloc (sizeof (GpFontFamily*));
-
     /* FontFamily must be able to actually find the family.
-     * If it can't, any subsequent calls should fail
-     *
-     * We currently fail (meaning we don't) because we don't actually
-     * test to see if we can successfully get a family
+     * If it can't, any subsequent calls should fail.
      */
-    stat = GdipCreateFontFamilyFromName (nonexistant, NULL, family);
+    stat = GdipCreateFontFamilyFromName (nonexistant, NULL, &FontFamily);
     expect (FontFamilyNotFound, stat);
-    stat = GdipGetFamilyName (*family,itsName, LANG_NEUTRAL);
-    expect (InvalidParameter, stat);
-    ok ((lstrcmpiW(itsName,nonexistant) != 0),
+    ok ((lstrcmpiW(FamilyName,nonexistant) != 0),
         "Expected a non-zero value for nonexistant font!\n");
-    stat = GdipDeleteFontFamily(*family);
-    expect (InvalidParameter, stat);
 
-    stat = GdipCreateFontFamilyFromName (arial, NULL, family);
+    stat = GdipCreateFontFamilyFromName (arial, NULL, &FontFamily);
     expect (Ok, stat);
 
-    stat = GdipGetFamilyName (*family, itsName, LANG_NEUTRAL);
+    stat = GdipGetFamilyName (FontFamily, FamilyName, LANG_NEUTRAL);
     expect (Ok, stat);
-    expect (0, lstrcmpiW(itsName,arial));
+    expect (0, lstrcmpiW(FamilyName,arial));
 
     if (0)
     {
         /* Crashes on Windows XP SP2, Vista, and so Wine as well */
-        stat = GdipGetFamilyName (*family, NULL, LANG_NEUTRAL);
+        stat = GdipGetFamilyName (FontFamily, NULL, LANG_NEUTRAL);
         expect (Ok, stat);
     }
 
-    stat = GdipDeleteFontFamily(*family);
-    expect (Ok, stat);
-
-    if (family) GdipFree (family);
+    GdipDeleteFontFamily(FontFamily);
 }
 

-- 
1.5.4.3




More information about the wine-patches mailing list