/* GLOBALS *******************************************************************/
PTHREADINFO ptiRawInput;
-PKTIMER MasterTimer;
+PKTIMER MasterTimer = NULL;
PATTACHINFO gpai = NULL;
static HANDLE MouseDeviceHandle;
NTSTATUS Status;
LARGE_INTEGER DueTime;
+ MasterTimer = ExAllocatePoolWithTag(NonPagedPool, sizeof(KTIMER), TAG_INPUT);
+ if (!MasterTimer)
+ {
+ DPRINT1("Win32K: Failed making Raw Input thread a win32 thread.\n");
+ return;
+ }
+ KeInitializeTimer(MasterTimer);
+
DueTime.QuadPart = (LONGLONG)(-10000000);
do
Objects[0] = &InputThreadsStart;
-
- MasterTimer = ExAllocatePoolWithTag(NonPagedPool, sizeof(KTIMER), TAG_INPUT);
- if (!MasterTimer)
- {
- DPRINT1("Win32K: Failed making Raw Input thread a win32 thread.\n");
- return;
- }
- KeInitializeTimer(MasterTimer);
Objects[1] = MasterTimer;
// This thread requires win32k!
pTmr->flags &= ~TMRF_DELETEPENDING;
}
+ ASSERT(MasterTimer != NULL);
// Start the timer thread!
if (pTmr == FirstpTmr)
KeSetTimer(MasterTimer, DueTime, NULL);
} while (pTmr != FirstpTmr);
// Restart the timer thread!
+ ASSERT(MasterTimer != NULL);
KeSetTimer(MasterTimer, DueTime, NULL);
TimeLast = Time;