mirror of
https://github.com/reactos/reactos.git
synced 2025-06-05 01:10:26 +00:00
Goodbye REGISTRY_ERROR bsod!
- Change UserMode -> KernelMode in ObReferenceObject*() calls, because that calls failed - Remove Cm-specific hack from Ob "advapi32_winetest.exe registry" shows 0 failures on the first run and 2 failures on further runs. I suppose there might be a leakage in the CM. To be investigated further (or wait till complete Cm rewrite in October). svn path=/trunk/; revision=23508
This commit is contained in:
parent
15e0dc6523
commit
4a57b7984a
2 changed files with 4 additions and 13 deletions
|
@ -148,7 +148,7 @@ CmFindObject(POBJECT_CREATE_INFORMATION ObjectCreateInfo,
|
||||||
ObReferenceObjectByPointer(FoundObject,
|
ObReferenceObjectByPointer(FoundObject,
|
||||||
STANDARD_RIGHTS_REQUIRED,
|
STANDARD_RIGHTS_REQUIRED,
|
||||||
CmiKeyType,
|
CmiKeyType,
|
||||||
UserMode);
|
KernelMode);
|
||||||
if (End != NULL)
|
if (End != NULL)
|
||||||
{
|
{
|
||||||
*End = L'\\';
|
*End = L'\\';
|
||||||
|
@ -790,7 +790,7 @@ CmiAddKeyToList(PKEY_OBJECT ParentKey,
|
||||||
ObReferenceObjectByPointer(ParentKey,
|
ObReferenceObjectByPointer(ParentKey,
|
||||||
STANDARD_RIGHTS_REQUIRED,
|
STANDARD_RIGHTS_REQUIRED,
|
||||||
CmiKeyType,
|
CmiKeyType,
|
||||||
UserMode);
|
KernelMode);
|
||||||
NewKey->ParentKey = ParentKey;
|
NewKey->ParentKey = ParentKey;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -239,17 +239,8 @@ ObpCloseHandleTableEntry(IN PHANDLE_TABLE HandleTable,
|
||||||
/* Dereference the object as well */
|
/* Dereference the object as well */
|
||||||
ASSERT(ObjectHeader->Type);
|
ASSERT(ObjectHeader->Type);
|
||||||
ASSERT(ObjectHeader->PointerCount != 0xCCCCCCCC);
|
ASSERT(ObjectHeader->PointerCount != 0xCCCCCCCC);
|
||||||
if (!wcscmp(ObjectHeader->Type->Name.Buffer, L"Key"))
|
|
||||||
{
|
ObDereferenceObject(Body);
|
||||||
//
|
|
||||||
// WE DONT CLOSE REGISTRY HANDLES BECAUSE CM IS BRAINDEAD
|
|
||||||
//
|
|
||||||
DPRINT("NOT CLOSING THE KEY\n");
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
ObDereferenceObject(Body);
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Return to caller */
|
/* Return to caller */
|
||||||
OBTRACE(OB_HANDLE_DEBUG,
|
OBTRACE(OB_HANDLE_DEBUG,
|
||||||
|
|
Loading…
Reference in a new issue