Paul Vriens : msi/tests: Only use functions if they are implemented.

Alexandre Julliard julliard at winehq.org
Thu Jan 24 07:21:20 CST 2008


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

Author: Paul Vriens <paul.vriens.wine at gmail.com>
Date:   Thu Jan 24 11:56:21 2008 +0100

msi/tests: Only use functions if they are implemented.

---

 dlls/msi/tests/source.c |   22 ++++++++++++++++++----
 1 files changed, 18 insertions(+), 4 deletions(-)

diff --git a/dlls/msi/tests/source.c b/dlls/msi/tests/source.c
index 07e6742..7407f5b 100644
--- a/dlls/msi/tests/source.c
+++ b/dlls/msi/tests/source.c
@@ -41,9 +41,17 @@ static void init_functionpointers(void)
     HMODULE hmsi = GetModuleHandleA("msi.dll");
     HMODULE hadvapi32 = GetModuleHandleA("advapi32.dll");
 
-    pMsiSourceListGetInfoA = (void*)GetProcAddress(hmsi, "MsiSourceListGetInfoA");
-    pMsiSourceListAddSourceExA = (void*)GetProcAddress(hmsi, "MsiSourceListAddSourceExA");
-    pConvertSidToStringSidA = (void*)GetProcAddress(hadvapi32, "ConvertSidToStringSidA");
+#define GET_PROC(dll, func) \
+    p ## func = (void *)GetProcAddress(dll, #func); \
+    if(!p ## func) \
+      trace("GetProcAddress(%s) failed\n", #func);
+
+    GET_PROC(hmsi, MsiSourceListAddSourceExA)
+    GET_PROC(hmsi, MsiSourceListGetInfoA)
+
+    GET_PROC(hadvapi32, ConvertSidToStringSidA)
+
+#undef GET_PROC
 }
 
 /* copied from dlls/msi/registry.c */
@@ -125,6 +133,12 @@ static void test_MsiSourceListGetInfo(void)
     HKEY userkey, hkey;
     DWORD size;
 
+    if (!pMsiSourceListGetInfoA)
+    {
+        skip("Skipping MsiSourceListGetInfoA tests\n");
+        return;
+    }
+
     create_test_guid(prodcode, prod_squashed);
     get_user_sid(&usersid);
 
@@ -348,7 +362,7 @@ static void test_MsiSourceListAddSourceEx(void)
 
     if (!pMsiSourceListAddSourceExA)
     {
-        skip("Skipping MsiSourceListAddSourceEx tests\n");
+        skip("Skipping MsiSourceListAddSourceExA tests\n");
         return;
     }
 




More information about the wine-cvs mailing list