Hugh McMaster : reg/tests: Verify key opening and key deletion in delete_tree().
Alexandre Julliard
julliard at winehq.org
Thu Jul 1 15:53:50 CDT 2021
Module: wine
Branch: master
Commit: 5115e51adb103f023600269ddc1833386fcc1e79
URL: https://source.winehq.org/git/wine.git/?a=commit;h=5115e51adb103f023600269ddc1833386fcc1e79
Author: Hugh McMaster <hugh.mcmaster at outlook.com>
Date: Thu Jul 1 23:22:47 2021 +1000
reg/tests: Verify key opening and key deletion in delete_tree().
Signed-off-by: Hugh McMaster <hugh.mcmaster at outlook.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
---
programs/reg/tests/add.c | 7 +++++--
programs/reg/tests/reg_test.h | 3 ++-
2 files changed, 7 insertions(+), 3 deletions(-)
diff --git a/programs/reg/tests/add.c b/programs/reg/tests/add.c
index 36fa634796d..469f354de39 100644
--- a/programs/reg/tests/add.c
+++ b/programs/reg/tests/add.c
@@ -154,7 +154,7 @@ void delete_key_(const char *file, unsigned line, HKEY root, const char *path, R
}
}
-LONG delete_tree(HKEY root, const char *path, REGSAM sam)
+LONG delete_tree_(const char *file, unsigned line, HKEY root, const char *path, REGSAM sam)
{
HKEY hkey;
LONG ret;
@@ -163,6 +163,7 @@ LONG delete_tree(HKEY root, const char *path, REGSAM sam)
static const char empty[1];
ret = RegOpenKeyExA(root, path, 0, KEY_READ|sam, &hkey);
+ lok(!ret || ret == ERROR_FILE_NOT_FOUND, "RegOpenKeyExA failed, got error %d\n", ret);
if (ret) return ret;
ret = RegQueryInfoKeyA(hkey, NULL, NULL, NULL, NULL, &max_subkey_len,
@@ -184,7 +185,7 @@ LONG delete_tree(HKEY root, const char *path, REGSAM sam)
ret = RegEnumKeyExA(hkey, 0, subkey_name, &subkey_len, NULL, NULL, NULL, NULL);
if (ret == ERROR_NO_MORE_ITEMS) break;
if (ret) goto cleanup;
- ret = delete_tree(hkey, subkey_name, sam);
+ ret = delete_tree_(file, line, hkey, subkey_name, sam);
if (ret) goto cleanup;
}
@@ -193,6 +194,8 @@ LONG delete_tree(HKEY root, const char *path, REGSAM sam)
else
ret = RegDeleteKeyExA(hkey, empty, sam, 0);
+ lok(!ret, "Failed to delete registry key, got error %d\n", ret);
+
cleanup:
HeapFree(GetProcessHeap(), 0, subkey_name);
RegCloseKey(hkey);
diff --git a/programs/reg/tests/reg_test.h b/programs/reg/tests/reg_test.h
index a5d7169beb4..3f64e552a19 100644
--- a/programs/reg/tests/reg_test.h
+++ b/programs/reg/tests/reg_test.h
@@ -64,7 +64,8 @@ void add_key_(const char *file, unsigned line, const HKEY root, const char *path
#define delete_key(r,p,s) delete_key_(__FILE__,__LINE__,r,p,s)
void delete_key_(const char *file, unsigned line, HKEY root, const char *path, REGSAM sam);
-LONG delete_tree(HKEY root, const char *path, REGSAM sam);
+#define delete_tree(r,p,s) delete_tree_(__FILE__,__LINE__,r,p,s)
+LONG delete_tree_(const char *file, unsigned line, HKEY root, const char *path, REGSAM sam);
#define add_value(k,n,t,d,s) add_value_(__FILE__,__LINE__,k,n,t,d,s)
void add_value_(const char *file, unsigned line, HKEY hkey, const char *name,
More information about the wine-cvs
mailing list