[ros-diffs] [cgutman] 42054: - Don't change the lock's OldIrql value until we actually have the lock because we need this value to unlock correctly - This should fix bug 4704
cgutman at svn.reactos.org
cgutman at svn.reactos.org
Sat Jul 18 19:57:38 CEST 2009
Author: cgutman
Date: Sat Jul 18 19:57:38 2009
New Revision: 42054
URL: http://svn.reactos.org/svn/reactos?rev=42054&view=rev
Log:
- Don't change the lock's OldIrql value until we actually have the lock because we need this value to unlock correctly
- This should fix bug 4704
Modified:
trunk/reactos/drivers/network/tcpip/recmutex/recmutex.c
Modified: trunk/reactos/drivers/network/tcpip/recmutex/recmutex.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/network/tcpip/recmutex/recmutex.c?rev=42054&r1=42053&r2=42054&view=diff
==============================================================================
--- trunk/reactos/drivers/network/tcpip/recmutex/recmutex.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/network/tcpip/recmutex/recmutex.c [iso-8859-1] Sat Jul 18 19:57:38 2009
@@ -34,7 +34,6 @@
if( CurrentIrql <= APC_LEVEL ) {
ExAcquireFastMutex( &RecMutex->Mutex );
- RecMutex->OldIrql = CurrentIrql;
while( RecMutex->Locked ) {
ExReleaseFastMutex( &RecMutex->Mutex );
Status = KeWaitForSingleObject( &RecMutex->StateLockedEvent,
@@ -44,6 +43,7 @@
NULL );
ExAcquireFastMutex( &RecMutex->Mutex );
}
+ RecMutex->OldIrql = CurrentIrql;
RecMutex->Locked = TRUE;
RecMutex->Writer = ToWrite;
RecMutex->CurrentThread = CurrentThread;
More information about the Ros-diffs
mailing list