Guarded some calls to handle functions with KeEnterCriticalRegion/KeLeaveCriticalRegion in PsDeleteCidHandle.

svn path=/trunk/; revision=14833
This commit is contained in:
Hartmut Birr 2005-04-27 21:47:34 +00:00
parent d38a2745a9
commit 2c12af40a1

View file

@ -71,6 +71,8 @@ PsDeleteCidHandle(HANDLE CidHandle, POBJECT_TYPE ObjectType)
PAGED_CODE();
KeEnterCriticalRegion();
Entry = ExMapHandleToPointer(PspCidTable,
ExHandle);
if(Entry != NULL)
@ -81,16 +83,18 @@ PsDeleteCidHandle(HANDLE CidHandle, POBJECT_TYPE ObjectType)
ExDestroyHandleByEntry(PspCidTable,
Entry,
ExHandle);
KeLeaveCriticalRegion();
return STATUS_SUCCESS;
}
else
{
ExUnlockHandleTableEntry(PspCidTable,
Entry);
KeLeaveCriticalRegion();
return STATUS_OBJECT_TYPE_MISMATCH;
}
}
KeLeaveCriticalRegion();
return STATUS_INVALID_HANDLE;
}