Author: akhaldi
Date: Sun Jan 15 10:10:54 2012
New Revision: 54969
URL:
http://svn.reactos.org/svn/reactos?rev=54969&view=rev
Log:
[PORTCLS]
* Initializes object attributes with correct handle attributes.
* Use the provided access rights and create options.
See issue #5934 for more details.
Modified:
trunk/reactos/drivers/wdm/audio/backpln/portcls/registry.cpp
Modified: trunk/reactos/drivers/wdm/audio/backpln/portcls/registry.cpp
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/wdm/audio/backpln/…
==============================================================================
--- trunk/reactos/drivers/wdm/audio/backpln/portcls/registry.cpp [iso-8859-1] (original)
+++ trunk/reactos/drivers/wdm/audio/backpln/portcls/registry.cpp [iso-8859-1] Sun Jan 15
10:10:54 2012
@@ -156,8 +156,8 @@
return STATUS_INVALID_HANDLE;
}
- InitializeObjectAttributes(&Attributes, SubKeyName, 0, m_hKey, NULL);
- Status = ZwCreateKey(&hKey, KEY_READ | KEY_WRITE, &Attributes, 0, NULL, 0,
Disposition);
+ InitializeObjectAttributes(&Attributes, SubKeyName, OBJ_INHERIT |
OBJ_CASE_INSENSITIVE | OBJ_OPENIF | OBJ_KERNEL_HANDLE, m_hKey, NULL);
+ Status = ZwCreateKey(&hKey, DesiredAccess, &Attributes, 0, NULL,
CreateOptions, Disposition);
if (!NT_SUCCESS(Status))
{
DPRINT("CRegistryKey::NewSubKey failed with %x\n", Status);
@@ -176,8 +176,6 @@
delete RegistryKey;
return Status;
}
-
- *RegistrySubKey = (PREGISTRYKEY)RegistryKey;
DPRINT("CRegistryKey::NewSubKey RESULT %p\n", *RegistrySubKey);
return STATUS_SUCCESS;