- Remove the APC from the list and then set it as not inserted, instead of backwards.
Modified: trunk/reactos/ntoskrnl/ke/apc.c
--- trunk/reactos/ntoskrnl/ke/apc.c 2005-08-15 21:06:07 UTC (rev 17406) +++ trunk/reactos/ntoskrnl/ke/apc.c 2005-08-15 22:44:32 UTC (rev 17407) @@ -674,8 +674,8 @@
} /* Dequeue the APC */
+ RemoveEntryList(ApcListEntry);
Apc->Inserted = FALSE;
- RemoveEntryList(ApcListEntry);
/* Go back to APC_LEVEL */ KeReleaseSpinLock(&Thread->ApcQueueLock, OldIrql);