1
0
Fork 0
mirror of synced 2025-03-07 03:53:26 +01:00

server: Avoid unloading of HKU .Default registry branch.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55000
This commit is contained in:
Bernhard Übelacker 2024-01-21 15:24:11 +01:00 committed by Alexandre Julliard
parent d6a6e1f186
commit 26e383c8df
2 changed files with 10 additions and 0 deletions

View file

@ -1598,6 +1598,14 @@ static void test_reg_unload_key(void)
ret = RegUnLoadKeyA(HKEY_LOCAL_MACHINE, "Test");
ok(ret == ERROR_SUCCESS, "expected ERROR_SUCCESS, got %ld\n", ret);
pRtlInitUnicodeString(&key_name, L"\\REGISTRY\\User\\.Default");
InitializeObjectAttributes(&attr, &key_name, OBJ_CASE_INSENSITIVE, NULL, NULL);
status = pNtUnloadKey(&attr);
ok(status == STATUS_ACCESS_DENIED, "expected STATUS_ACCESS_DENIED, got %08lx\n", status);
ret = RegUnLoadKeyA(HKEY_USERS, ".Default");
ok(ret == ERROR_ACCESS_DENIED, "expected ERROR_ACCESS_DENIED, got %ld\n", ret);
set_privileges(SE_RESTORE_NAME, FALSE);
DeleteFileA("saved_key");

View file

@ -2357,6 +2357,8 @@ DECL_HANDLER(unload_registry)
{
if (key->obj.handle_count)
set_error( STATUS_CANNOT_DELETE );
else if (key->obj.is_permanent)
set_error( STATUS_ACCESS_DENIED );
else
delete_key( key, 1 ); /* FIXME */
release_object( key );