Send window-bound timers to the correctmessage queue
Modified: branches/ros-branch-0_2_8/reactos/subsys/win32k/ntuser/timer.c

Modified: branches/ros-branch-0_2_8/reactos/subsys/win32k/ntuser/timer.c
--- branches/ros-branch-0_2_8/reactos/subsys/win32k/ntuser/timer.c	2005-10-13 07:35:19 UTC (rev 18420)
+++ branches/ros-branch-0_2_8/reactos/subsys/win32k/ntuser/timer.c	2005-10-13 07:35:48 UTC (rev 18421)
@@ -60,6 +60,7 @@
 {
    PWINDOW_OBJECT Window;
    UINT_PTR Ret = 0;
+   PUSER_MESSAGE_QUEUE MessageQueue;
 
    DPRINT("IntSetTimer wnd %x id %p elapse %u timerproc %p systemtimer %s\n",
           Wnd, IDEvent, Elapse, TimerFunc, SystemTimer ? "TRUE" : "FALSE");
@@ -82,6 +83,7 @@
       HintIndex = ++IDEvent;
       IntUnlockWindowlessTimerBitmap();
       Ret = IDEvent;
+      MessageQueue = PsGetWin32Thread()->MessageQueue;
    }
    else
    {
@@ -99,6 +101,7 @@
       }
 
       Ret = IDEvent;
+      MessageQueue = Window->MessageQueue;
    }
 
 #if 1
@@ -128,7 +131,7 @@
       Elapse = 10;
    }
 
-   if (! MsqSetTimer(PsGetWin32Thread()->MessageQueue, Wnd,
+   if (! MsqSetTimer(MessageQueue, Wnd,
                      IDEvent, Elapse, TimerFunc,
                      SystemTimer ? WM_SYSTIMER : WM_TIMER))
    {