Detlef Riekenberg : advpack/tests: Fixed failure when ProgramFilesDir is != C:Program

Alexandre Julliard julliard at wine.codeweavers.com
Mon Jan 23 10:35:20 CST 2006


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

Author: Detlef Riekenberg <wine.dev at web.de>
Date:   Mon Jan 23 17:29:41 2006 +0100

advpack/tests: Fixed failure when "ProgramFilesDir" is != "C:\Program Files".

---

 dlls/advpack/tests/Makefile.in |    2 +-
 dlls/advpack/tests/advpack.c   |   18 +++++++++++++++---
 2 files changed, 16 insertions(+), 4 deletions(-)

diff --git a/dlls/advpack/tests/Makefile.in b/dlls/advpack/tests/Makefile.in
index dd5e41b..00c0e26 100644
--- a/dlls/advpack/tests/Makefile.in
+++ b/dlls/advpack/tests/Makefile.in
@@ -3,7 +3,7 @@ TOPOBJDIR = ../../..
 SRCDIR    = @srcdir@
 VPATH     = @srcdir@
 TESTDLL   = advpack.dll
-IMPORTS   = cabinet user32 kernel32
+IMPORTS   = cabinet user32 advapi32 kernel32
 
 CTESTS = \
 	advpack.c \
diff --git a/dlls/advpack/tests/advpack.c b/dlls/advpack/tests/advpack.c
index c5972cd..2d82964 100644
--- a/dlls/advpack/tests/advpack.c
+++ b/dlls/advpack/tests/advpack.c
@@ -25,7 +25,7 @@
 #include <assert.h>
 #include "wine/test.h"
 
-#define TEST_STRING1 "C:\\Program Files\\Application Name"
+#define TEST_STRING1 "\\Application Name"
 #define TEST_STRING2 "%49001%\\Application Name"
 
 static HRESULT (WINAPI *pGetVersionFromFile)(LPSTR,LPDWORD,LPDWORD,BOOL);
@@ -224,8 +224,20 @@ static void translateinfstring_test()
     if(hr == ERROR_SUCCESS)
     todo_wine
     {
-        ok(!strcmp(buffer, TEST_STRING1), "Expected %s, got %s\n", TEST_STRING1, buffer);
-        ok(dwSize == 34, "Expected size 34, got %ld\n", dwSize);
+        HKEY key;
+        DWORD len = MAX_PATH;
+        char cmpbuffer[MAX_PATH];
+        LONG res = RegOpenKeyA(HKEY_LOCAL_MACHINE, "Software\\Microsoft\\Windows\\CurrentVersion", &key);
+        if(res == ERROR_SUCCESS) {
+            res = RegQueryValueExA(key, "ProgramFilesDir", NULL, NULL, (LPBYTE)cmpbuffer, &len);
+            if(res == ERROR_SUCCESS) {
+                strcat(cmpbuffer, TEST_STRING1);
+                ok(!strcmp(buffer, cmpbuffer), "Expected '%s', got '%s'\n", cmpbuffer, buffer);
+                ok(dwSize == (strlen(cmpbuffer)+1), "Expected size %d, got %ld\n",
+                   strlen(cmpbuffer)+1, dwSize);
+            }
+            RegCloseKey(key);
+        }
     }
 
     buffer[0] = 0;




More information about the wine-cvs mailing list