Mark the timer as removed (in KiExpireTimers).
Modified: trunk/reactos/ntoskrnl/ke/timer.c
--- trunk/reactos/ntoskrnl/ke/timer.c 2006-01-09 23:54:10 UTC (rev 20759) +++ trunk/reactos/ntoskrnl/ke/timer.c 2006-01-09 23:58:25 UTC (rev 20760) @@ -267,6 +267,7 @@
/* Get the Timer */ Timer = CONTAINING_RECORD(CurrentEntry, KTIMER, TimerListEntry);
+ Timer->Header.Inserted = FALSE;
DPRINT("Expiring Timer: %x\n", Timer); /* Expire it */