From 991fe7200a76e7f0a1f64024e69860dd85bf4b1a Mon Sep 17 00:00:00 2001 From: Alex Ionescu Date: Wed, 24 Jan 2007 04:46:31 +0000 Subject: [PATCH] - Fix a bug in NtSetTimer which was causing us to completely disregard the due time. - kmtest now reports 0 failures for the extimer regression test. svn path=/trunk/; revision=25610 --- reactos/ntoskrnl/ex/timer.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/reactos/ntoskrnl/ex/timer.c b/reactos/ntoskrnl/ex/timer.c index c6e041d611d..3669608cc5a 100644 --- a/reactos/ntoskrnl/ex/timer.c +++ b/reactos/ntoskrnl/ex/timer.c @@ -601,6 +601,11 @@ NtSetTimer(IN HANDLE TimerHandle, _SEH_END; if(!NT_SUCCESS(Status)) return Status; } + else + { + /* Capture the time directly */ + TimerDueTime = *DueTime; + } /* Get the Timer Object */ Status = ObReferenceObjectByHandle(TimerHandle, @@ -681,7 +686,7 @@ NtSetTimer(IN HANDLE TimerHandle, KeInitializeApc(&Timer->TimerApc, &Thread->Tcb, CurrentApcEnvironment, - &ExpTimerApcKernelRoutine, + ExpTimerApcKernelRoutine, (PKRUNDOWN_ROUTINE)NULL, (PKNORMAL_ROUTINE)TimerApcRoutine, PreviousMode, @@ -727,5 +732,3 @@ NtSetTimer(IN HANDLE TimerHandle, /* Return to Caller */ return Status; } - -/* EOF */