handle the case when ExRundownCompleted() was called before ExReleaseRundownProtectionEx() Modified: trunk/reactos/ntoskrnl/ex/rundown.c _____
Modified: trunk/reactos/ntoskrnl/ex/rundown.c --- trunk/reactos/ntoskrnl/ex/rundown.c 2005-02-20 23:56:47 UTC (rev 13699) +++ trunk/reactos/ntoskrnl/ex/rundown.c 2005-02-21 00:39:59 UTC (rev 13700) @@ -118,7 +118,11 @@
/* Get Pointer */ PRUNDOWN_DESCRIPTOR RundownDescriptor = (PRUNDOWN_DESCRIPTOR)((ULONG_PTR)RunRef->Ptr & ~EX_RUNDOWN_ACTIVE);
- ASSERT(RundownDescriptor != NULL); + if (RundownDescriptor == NULL) + { + /* the rundown was completed and there's no one to notify */ + break; + }
Current = RundownDescriptor->References;