Serge Gautherie : advapi32/tests: Check RegGetValueA() RRF_SUBKEY_WOW64??KEY validation.

Alexandre Julliard julliard at winehq.org
Fri Mar 27 16:14:38 CDT 2020


Module: wine
Branch: master
Commit: c7a12a851beaf639563914fd1ff664434a7b860f
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=c7a12a851beaf639563914fd1ff664434a7b860f

Author: Serge Gautherie <winehq-git_serge_180711 at gautherie.fr>
Date:   Sat Mar 21 16:21:46 2020 +0100

advapi32/tests: Check RegGetValueA() RRF_SUBKEY_WOW64??KEY validation.

Signed-off-by: Serge Gautherie <winehq-git_serge_180711 at gautherie.fr>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

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

diff --git a/dlls/advapi32/tests/registry.c b/dlls/advapi32/tests/registry.c
index 1f335b1c9f..c8f9adf773 100644
--- a/dlls/advapi32/tests/registry.c
+++ b/dlls/advapi32/tests/registry.c
@@ -772,10 +772,28 @@ static void test_get_value(void)
     ok(type == REG_DWORD, "type=%d\n", type);
     ok(dw == 0x12345678, "dw=%d\n", dw);
 
+    /* Check RRF_SUBKEY_WOW64*KEY validation on a case without a subkey */
+    ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6464KEY | RRF_SUBKEY_WOW6432KEY, NULL, NULL, NULL);
+    ok(ret == ERROR_INVALID_PARAMETER || broken(ret == ERROR_SUCCESS), /* Before Win10 */
+       "ret=%d\n", ret);
+    ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6464KEY, NULL, NULL, NULL);
+    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6432KEY, NULL, NULL, NULL);
+    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+
     /* Query by subkey-name */
     ret = pRegGetValueA(HKEY_CURRENT_USER, "Software\\Wine\\Test", "DWORD", RRF_RT_REG_DWORD, NULL, NULL, NULL);
     ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
 
+    /* Check RRF_SUBKEY_WOW64*KEY validation on a case with a subkey */
+    ret = pRegGetValueA(HKEY_CURRENT_USER, "Software\\Wine\\Test", "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6464KEY | RRF_SUBKEY_WOW6432KEY, NULL, NULL, NULL);
+    ok(ret == ERROR_INVALID_PARAMETER || broken(ret == ERROR_SUCCESS), /* Before Win10 */
+       "ret=%d\n", ret);
+    ret = pRegGetValueA(HKEY_CURRENT_USER, "Software\\Wine\\Test", "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6464KEY, NULL, NULL, NULL);
+    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+    ret = pRegGetValueA(HKEY_CURRENT_USER, "Software\\Wine\\Test", "DWORD", RRF_RT_REG_DWORD | RRF_SUBKEY_WOW6432KEY, NULL, NULL, NULL);
+    ok(ret == ERROR_SUCCESS, "ret=%d\n", ret);
+
     /* Query REG_DWORD using RRF_RT_REG_BINARY (restricted) */
     size = type = dw = 0xdeadbeef;
     ret = pRegGetValueA(hkey_main, NULL, "DWORD", RRF_RT_REG_BINARY, &type, &dw, &size);




More information about the wine-cvs mailing list