advapi32/tests: Skip a couple of registry tests on NT4 to avoid crashing it.

Francois Gouget fgouget at free.fr
Fri Aug 24 09:37:56 CDT 2012


---

I know it's bad form to test for the Windows version but I'm not sure 
what other check would be relevant here.

 dlls/advapi32/tests/registry.c |   18 ++++++++++++------
 1 file changed, 12 insertions(+), 6 deletions(-)

diff --git a/dlls/advapi32/tests/registry.c b/dlls/advapi32/tests/registry.c
index 870275e..a86f7a4 100644
--- a/dlls/advapi32/tests/registry.c
+++ b/dlls/advapi32/tests/registry.c
@@ -1696,15 +1696,21 @@ static void test_symlinks(void)
                            KEY_ALL_ACCESS, NULL, &link, NULL );
     ok( err == ERROR_SUCCESS, "RegCreateKeyEx failed: %u\n", err );
 
-    /* REG_SZ is not allowed */
-    err = RegSetValueExA( link, "SymbolicLinkValue", 0, REG_SZ, (BYTE *)"foobar", sizeof("foobar") );
-    ok( err == ERROR_ACCESS_DENIED, "RegSetValueEx wrong error %u\n", err );
+    /* REG_SZ is not allowed and crashes NT4 SP5 and older */
+    if (LOWORD(GetVersion()) != 0x0004)
+    {
+        err = RegSetValueExA( link, "SymbolicLinkValue", 0, REG_SZ, (BYTE *)"foobar", sizeof("foobar") );
+        ok( err == ERROR_ACCESS_DENIED, "RegSetValueEx wrong error %u\n", err );
+    }
     err = RegSetValueExA( link, "SymbolicLinkValue", 0, REG_LINK,
                           (BYTE *)target, target_len - sizeof(WCHAR) );
     ok( err == ERROR_SUCCESS, "RegSetValueEx failed error %u\n", err );
-    /* other values are not allowed */
-    err = RegSetValueExA( link, "link", 0, REG_LINK, (BYTE *)target, target_len - sizeof(WCHAR) );
-    ok( err == ERROR_ACCESS_DENIED, "RegSetValueEx wrong error %u\n", err );
+    /* other values are not allowed and crash NT4 SP5 and older */
+    if (LOWORD(GetVersion()) != 0x0004)
+    {
+        err = RegSetValueExA( link, "link", 0, REG_LINK, (BYTE *)target, target_len - sizeof(WCHAR) );
+        ok( err == ERROR_ACCESS_DENIED, "RegSetValueEx wrong error %u\n", err );
+    }
 
     /* try opening the target through the link */
 
-- 
1.7.10.4



More information about the wine-patches mailing list