[PATCH] setupapi: Recursively remove any subkeys before calling NtDeleteKey()
Hugh McMaster
hugh.mcmaster at outlook.com
Tue Sep 12 01:08:13 CDT 2017
Signed-off-by: Hugh McMaster <hugh.mcmaster at outlook.com>
---
dlls/setupapi/install.c | 6 +++++-
dlls/setupapi/tests/install.c | 1 -
2 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/setupapi/install.c b/dlls/setupapi/install.c
index a8d38aaac2..0593df892e 100644
--- a/dlls/setupapi/install.c
+++ b/dlls/setupapi/install.c
@@ -320,7 +320,11 @@ static BOOL do_reg_operation( HKEY hkey, const WCHAR *value, INFCONTEXT *context
}
else RegDeleteValueW( hkey, value );
}
- else NtDeleteKey( hkey );
+ else
+ {
+ RegDeleteTreeW( hkey, NULL );
+ NtDeleteKey( hkey );
+ }
return TRUE;
}
diff --git a/dlls/setupapi/tests/install.c b/dlls/setupapi/tests/install.c
index 558453c060..3ca7f26acf 100644
--- a/dlls/setupapi/tests/install.c
+++ b/dlls/setupapi/tests/install.c
@@ -174,7 +174,6 @@ static void test_registry(void)
/* Check if the registry key is recursively deleted */
res = RegOpenKeyA(HKEY_CURRENT_USER, "Software\\Wine\\setupapitest", &key);
- todo_wine
ok(res == ERROR_FILE_NOT_FOUND, "Didn't expect the registry key to exist\n");
/* Just in case */
if (res == ERROR_SUCCESS)
--
2.14.1
More information about the wine-patches
mailing list