ole32: Make sure that key "Software\\Classes" exists under HKEY_CURRENT_USER.

Dmitry Timoshkov dmitry at baikal.ru
Tue Jun 11 00:47:51 CDT 2013


The key "Software\\Classes" doesn't exist under HKEY_CURRENT_USER in default
Wine registry, it gets created by dlls/advapi32/tests/registry.c tests. This
means that running 'make test' in dlls/ole32/tests with a clean ~/.wine prefix
always fails.
---
 dlls/ole32/tests/compobj.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/dlls/ole32/tests/compobj.c b/dlls/ole32/tests/compobj.c
index f2cdf6d..470adbd 100644
--- a/dlls/ole32/tests/compobj.c
+++ b/dlls/ole32/tests/compobj.c
@@ -444,8 +444,9 @@ static void test_CoGetClassObject(void)
     {
         IUnknown_Release(pUnk);
 
-        res = RegOpenKeyExA(HKEY_CURRENT_USER, "Software\\Classes", 0, KEY_ALL_ACCESS, &hkey);
-        ok(!res, "RegOpenKeyExA returned %d\n", res);
+        res = RegCreateKeyEx(HKEY_CURRENT_USER, "Software\\Classes", 0, NULL, 0,
+                             KEY_ALL_ACCESS, NULL, &hkey, NULL);
+        ok(!res, "RegCreateKeyEx returned %d\n", res);
 
         res = pRegOverridePredefKey(HKEY_CLASSES_ROOT, hkey);
         ok(!res, "RegOverridePredefKey returned %d\n", res);
@@ -780,8 +781,9 @@ static void test_CoGetPSClsid(void)
     hr = CoGetPSClsid(&IID_IClassFactory, &clsid);
     ok_ole_success(hr, "CoGetPSClsid");
 
-    res = RegOpenKeyExA(HKEY_CURRENT_USER, "Software\\Classes", 0, KEY_ALL_ACCESS, &hkey);
-    ok(!res, "RegOpenKeyExA returned %d\n", res);
+    res = RegCreateKeyEx(HKEY_CURRENT_USER, "Software\\Classes", 0, NULL, 0,
+                         KEY_ALL_ACCESS, NULL, &hkey, NULL);
+    ok(!res, "RegCreateKeyEx returned %d\n", res);
 
     res = pRegOverridePredefKey(HKEY_CLASSES_ROOT, hkey);
     ok(!res, "RegOverridePredefKey returned %d\n", res);
-- 
1.8.3.1




More information about the wine-patches mailing list