reg/tests: Only pass a newly created HKEY if it is used in later tests.

Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Hugh McMaster 2021-04-16 19:27:15 +10:00 committed by Alexandre Julliard
parent bbdc0cc924
commit 559086af62
3 changed files with 15 additions and 15 deletions

View File

@ -126,10 +126,16 @@ void verify_key_nonexist_(const char *file, unsigned line, HKEY key_base, const
void add_key_(const char *file, unsigned line, const HKEY hkey, const char *path, HKEY *subkey)
{
LONG err;
HKEY new_key;
err = RegCreateKeyExA(hkey, path, 0, NULL, REG_OPTION_NON_VOLATILE,
KEY_READ|KEY_WRITE, NULL, subkey, NULL);
KEY_READ|KEY_WRITE, NULL, &new_key, NULL);
lok(err == ERROR_SUCCESS, "RegCreateKeyExA failed: %d\n", err);
if (subkey)
*subkey = new_key;
else
RegCloseKey(new_key);
}
void delete_key_(const char *file, unsigned line, const HKEY hkey, const char *path)
@ -315,7 +321,7 @@ static void test_key_formats(void)
static void test_add(void)
{
HKEY hkey, hsubkey;
HKEY hkey;
DWORD r, dword;
run_reg_exe("reg add HKCU\\" KEY_BASE " /f", &r);
@ -324,8 +330,7 @@ static void test_add(void)
open_key(HKEY_CURRENT_USER, KEY_BASE, KEY_WRITE, &hkey);
/* Test whether overwriting a registry key modifies existing keys and values */
add_key(hkey, "Subkey", &hsubkey);
close_key(hsubkey);
add_key(hkey, "Subkey", NULL);
add_value(hkey, "Test1", REG_SZ, "Value1", 7);
dword = 0x123;
add_value(hkey, "Test2", REG_DWORD, &dword, sizeof(dword));

View File

@ -21,7 +21,7 @@
static void test_delete(void)
{
HKEY hkey, hsubkey;
HKEY hkey;
DWORD r;
const DWORD deadbeef = 0xdeadbeef;
@ -75,8 +75,7 @@ static void test_delete(void)
add_value(hkey, "bar", REG_DWORD, &deadbeef, sizeof(deadbeef));
add_value(hkey, NULL, REG_DWORD, &deadbeef, sizeof(deadbeef));
add_key(hkey, "subkey", &hsubkey);
close_key(hsubkey);
add_key(hkey, "subkey", NULL);
run_reg_exe("reg delete HKCU\\" KEY_BASE " /v bar /f", &r);
ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r);
@ -92,8 +91,7 @@ static void test_delete(void)
verify_key(hkey, "subkey");
/* Test forward and back slashes */
add_key(hkey, "https://winehq.org", &hsubkey);
close_key(hsubkey);
add_key(hkey, "https://winehq.org", NULL);
add_value(hkey, "count/up", REG_SZ, "one/two/three", 14);
add_value(hkey, "\\foo\\bar", REG_SZ, "", 1);

View File

@ -291,10 +291,8 @@ static void test_export(void)
/* Test the export order of registry keys */
add_key(HKEY_CURRENT_USER, KEY_BASE, &hkey);
add_key(hkey, "Subkey2", &subkey);
close_key(subkey);
add_key(hkey, "Subkey1", &subkey);
close_key(subkey);
add_key(hkey, "Subkey2", NULL);
add_key(hkey, "Subkey1", NULL);
run_reg_exe("reg export HKEY_CURRENT_USER\\" KEY_BASE " file.reg /y", &r);
ok(r == REG_EXIT_SUCCESS, "got exit code %d, expected 0\n", r);
@ -405,8 +403,7 @@ static void test_export(void)
/* Test registry export with forward and back slashes */
add_key(HKEY_CURRENT_USER, KEY_BASE, &hkey);
add_key(hkey, "https://winehq.org", &subkey);
close_key(subkey);
add_key(hkey, "https://winehq.org", NULL);
add_value(hkey, "count/up", REG_SZ, "one/two/three", 14);
add_value(hkey, "\\foo\\bar", REG_SZ, "", 1);
close_key(hkey);