James Hawkins : advpack: Factor out the API loading of advpack tests.

Alexandre Julliard julliard at wine.codeweavers.com
Tue Feb 28 06:07:55 CST 2006


Module: wine
Branch: refs/heads/master
Commit: 790f4523d272ab5b7d56ab6d34e82da2c522e05c
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=790f4523d272ab5b7d56ab6d34e82da2c522e05c

Author: James Hawkins <truiken at gmail.com>
Date:   Mon Feb 27 13:49:50 2006 -0600

advpack: Factor out the API loading of advpack tests.

---

 dlls/advpack/tests/advpack.c |   32 +++++++++++++++++++-------------
 1 files changed, 19 insertions(+), 13 deletions(-)

diff --git a/dlls/advpack/tests/advpack.c b/dlls/advpack/tests/advpack.c
index b678797..a382ef8 100644
--- a/dlls/advpack/tests/advpack.c
+++ b/dlls/advpack/tests/advpack.c
@@ -28,10 +28,27 @@
 #define TEST_STRING1 "\\Application Name"
 #define TEST_STRING2 "%49001%\\Application Name"
 
-static HRESULT (WINAPI *pGetVersionFromFile)(LPSTR,LPDWORD,LPDWORD,BOOL);
 static HRESULT (WINAPI *pDelNode)(LPCSTR,DWORD);
+static HRESULT (WINAPI *pGetVersionFromFile)(LPSTR,LPDWORD,LPDWORD,BOOL);
 static HRESULT (WINAPI *pTranslateInfString)(LPSTR,LPSTR,LPSTR,LPSTR,LPSTR,DWORD,LPDWORD,LPVOID);
 
+static BOOL init_function_pointers(void)
+{
+    HMODULE hAdvPack = LoadLibraryA("advpack.dll");
+
+    if (!hAdvPack)
+        return FALSE;
+
+    pDelNode = (void *)GetProcAddress(hAdvPack, "DelNode");
+    pGetVersionFromFile = (void *)GetProcAddress(hAdvPack, "GetVersionFromFile");
+    pTranslateInfString = (void *)GetProcAddress(hAdvPack, "TranslateInfString");
+
+    if (!pDelNode || !pGetVersionFromFile || !pTranslateInfString)
+        return FALSE;
+
+    return TRUE;
+}
+
 static void version_test(void)
 {
     HRESULT hr;
@@ -256,21 +273,10 @@ static void translateinfstring_test()
 
 START_TEST(advpack)
 {
-    HMODULE hdll;
-
-    hdll = LoadLibraryA("advpack.dll");
-    if (!hdll)
-        return;
-
-    pGetVersionFromFile = (void*)GetProcAddress(hdll, "GetVersionFromFile");
-    pDelNode = (void*)GetProcAddress(hdll, "DelNode");
-    pTranslateInfString = (void*)GetProcAddress(hdll, "TranslateInfString");
-    if (!pGetVersionFromFile || !pDelNode || !pTranslateInfString)
+    if (!init_function_pointers())
         return;
 
     version_test();
     delnode_test();
     translateinfstring_test();
-
-    FreeLibrary(hdll);
 }




More information about the wine-cvs mailing list