From 6b126a39a9a0de67905bb3afb2a7cc804195e5ca Mon Sep 17 00:00:00 2001 From: Alex Ionescu Date: Sun, 11 Mar 2007 00:42:18 +0000 Subject: [PATCH] - Release dispatcher lock if gate is already signaled. See issue #2083 for more details. svn path=/trunk/; revision=26061 --- reactos/ntoskrnl/ke/gate.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/reactos/ntoskrnl/ke/gate.c b/reactos/ntoskrnl/ke/gate.c index f45dc7570ba..ab1c72a5647 100644 --- a/reactos/ntoskrnl/ke/gate.c +++ b/reactos/ntoskrnl/ke/gate.c @@ -75,6 +75,9 @@ KeWaitForGate(IN PKGATE Gate, KiReleaseDispatcherObject(&Gate->Header); KiReleaseThreadLock(Thread); + /* Release the gate lock */ + if (Queue) KiReleaseDispatcherLockFromDpcLevel(); + /* Release the APC lock and return */ KiReleaseApcLock(&ApcLock); break;