[7/7] msi/tests: Fix some test failures on 64-bit.

Hans Leidekker hans at codeweavers.com
Wed Oct 6 08:45:16 CDT 2010


---
 dlls/msi/tests/install.c |   36 ++++++++++++++++++++++++++++++------
 1 files changed, 30 insertions(+), 6 deletions(-)

diff --git a/dlls/msi/tests/install.c b/dlls/msi/tests/install.c
index b69a21a..71dd168 100644
--- a/dlls/msi/tests/install.c
+++ b/dlls/msi/tests/install.c
@@ -10160,8 +10160,16 @@ static void test_remove_registry_values(void)
     ok(res == ERROR_SUCCESS, "key removed\n");
     RegCloseKey(key);
 
-    res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\key2", 0, access, &key);
-    ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    if (is_64bit && !wow64)
+    {
+        res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wow6432Node\\Wine\\key2", 0, KEY_ALL_ACCESS, &key);
+        ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    }
+    else
+    {
+        res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\key2", 0, KEY_ALL_ACCESS, &key);
+        ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    }
 
     res = RegCreateKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\key2", 0, NULL, 0, access, NULL, &key, NULL);
     ok(res == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %d\n", res);
@@ -10170,8 +10178,16 @@ static void test_remove_registry_values(void)
     r = MsiInstallProductA(msifile, "REMOVE=ALL");
     ok(r == ERROR_SUCCESS, "Expected ERROR_SUCCESS, got %u\n", r);
 
-    res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\key1", 0, access, &key);
-    ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    if (is_64bit && !wow64)
+    {
+        res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wow6432Node\\Wine\\key1", 0, KEY_ALL_ACCESS, &key);
+        ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    }
+    else
+    {
+        res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\key1", 0, KEY_ALL_ACCESS, &key);
+        ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    }
 
     res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\key2", 0, access, &key);
     ok(res == ERROR_SUCCESS, "key removed\n");
@@ -10181,8 +10197,16 @@ static void test_remove_registry_values(void)
     ok(res == ERROR_SUCCESS, "key removed\n");
     RegCloseKey(key);
 
-    res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\keyB", 0, access, &key);
-    ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    if (is_64bit && !wow64)
+    {
+        res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wow6432Node\\Wine\\keyB", 0, KEY_ALL_ACCESS, &key);
+        ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    }
+    else
+    {
+        res = RegOpenKeyExA(HKEY_LOCAL_MACHINE, "Software\\Wine\\keyB", 0, KEY_ALL_ACCESS, &key);
+        ok(res == ERROR_FILE_NOT_FOUND, "key not removed\n");
+    }
 
     delete_key(HKEY_LOCAL_MACHINE, "Software\\Wine\\keyA", access);
     delete_key(HKEY_LOCAL_MACHINE, "Software\\Wine\\key2", access);
-- 
1.7.1







More information about the wine-patches mailing list