reverted last change Modified: trunk/reactos/ntoskrnl/ex/handle.c _____
Modified: trunk/reactos/ntoskrnl/ex/handle.c --- trunk/reactos/ntoskrnl/ex/handle.c 2005-07-26 21:20:55 UTC (rev 16760) +++ trunk/reactos/ntoskrnl/ex/handle.c 2005-07-26 21:33:38 UTC (rev 16761) @@ -910,16 +910,14 @@
ASSERT(HandleTable);
- ExAcquireHandleTableLockShared(HandleTable); HandleTableEntry = ExpLookupHandleTableEntry(HandleTable, Handle); if (HandleTableEntry != NULL && ExLockHandleTableEntry(HandleTable, HandleTableEntry)) { DPRINT("ExMapHandleToPointer HT:0x%p Entry:0x%p locked\n", HandleTable, HandleTableEntry); - ExReleaseHandleTableLock(HandleTable); return HandleTableEntry; } - ExReleaseHandleTableLock(HandleTable); + return NULL; }
@@ -938,14 +936,12 @@ ASSERT(ChangeHandleCallback);
KeEnterCriticalRegion(); - ExAcquireHandleTableLockShared(HandleTable);
HandleTableEntry = ExpLookupHandleTableEntry(HandleTable, Handle);
if(HandleTableEntry != NULL && ExLockHandleTableEntry(HandleTable, HandleTableEntry)) { - ExReleaseHandleTableLock(HandleTable); Ret = ChangeHandleCallback(HandleTable, HandleTableEntry, NULL); @@ -953,10 +949,7 @@ ExUnlockHandleTableEntry(HandleTable, HandleTableEntry); } - else - { - ExReleaseHandleTableLock(HandleTable); - } + KeLeaveCriticalRegion();
return Ret;