[ros-diffs] [greatlrd] 22524: bugfix : patch from w3seek bug 1620 : RTL: Fix a locking bug in the vectored exception handling

greatlrd at svn.reactos.org greatlrd at svn.reactos.org
Fri Jun 23 16:42:15 CEST 2006


Author: greatlrd
Date: Fri Jun 23 18:42:14 2006
New Revision: 22524

URL: http://svn.reactos.ru/svn/reactos?rev=22524&view=rev
Log:
bugfix : patch from w3seek bug 1620 : RTL: Fix a locking bug in the vectored exception handling

Modified:
    trunk/reactos/lib/rtl/vectoreh.c

Modified: trunk/reactos/lib/rtl/vectoreh.c
URL: http://svn.reactos.ru/svn/reactos/trunk/reactos/lib/rtl/vectoreh.c?rev=22524&r1=22523&r2=22524&view=diff
==============================================================================
--- trunk/reactos/lib/rtl/vectoreh.c (original)
+++ trunk/reactos/lib/rtl/vectoreh.c Fri Jun 23 18:42:14 2006
@@ -51,11 +51,14 @@
                               RTL_VECTORED_EXCEPTION_HANDLER,
                               ListEntry);
       VectoredHandler = RtlDecodePointer(veh->VectoredHandler);
+      RtlLeaveCriticalSection(&RtlpVectoredExceptionLock);
+
       if(VectoredHandler(&ExceptionInfo) == EXCEPTION_CONTINUE_EXECUTION)
       {
-        RtlLeaveCriticalSection(&RtlpVectoredExceptionLock);
         return ExceptionContinueSearch;
       }
+
+      RtlEnterCriticalSection(&RtlpVectoredExceptionLock);
     }
     RtlLeaveCriticalSection(&RtlpVectoredExceptionLock);
   }




More information about the Ros-diffs mailing list