[NtUser]
authorJames Tabor <james.tabor@reactos.org>
Sat, 18 Aug 2012 21:47:42 +0000 (21:47 +0000)
committerJames Tabor <james.tabor@reactos.org>
Sat, 18 Aug 2012 21:47:42 +0000 (21:47 +0000)
- Use thread information pointer instead if the message queue.

svn path=/trunk/; revision=57102

reactos/win32ss/user/ntuser/main.c
reactos/win32ss/user/ntuser/msgqueue.c
reactos/win32ss/user/ntuser/msgqueue.h

index 084b417..6772e5e 100644 (file)
@@ -270,7 +270,7 @@ UserCreateThreadInfo(struct _ETHREAD *Thread)
     ptiCurrent->ptiSibling = ptiCurrent->ppi->ptiList;
     ptiCurrent->ppi->ptiList = ptiCurrent;
     ptiCurrent->ppi->cThreads++;
-    ptiCurrent->MessageQueue = MsqCreateMessageQueue(Thread);
+    ptiCurrent->MessageQueue = MsqCreateMessageQueue(ptiCurrent);
     if(ptiCurrent->MessageQueue == NULL)
     {
         ERR_CH(UserThread,"Failed to allocate message loop\n");
index 2e6329f..7558931 100644 (file)
@@ -1859,11 +1859,13 @@ HungAppSysTimerProc(HWND hwnd, UINT uMsg, UINT_PTR idEvent, DWORD dwTime)
 }
 
 BOOLEAN FASTCALL
-MsqInitializeMessageQueue(struct _ETHREAD *Thread, PUSER_MESSAGE_QUEUE MessageQueue)
+MsqInitializeMessageQueue(PTHREADINFO pti, PUSER_MESSAGE_QUEUE MessageQueue)
 {
+   struct _ETHREAD *Thread;
    LARGE_INTEGER LargeTickCount;
    NTSTATUS Status;
 
+   Thread = pti->pEThread;
    MessageQueue->Thread = Thread;
    MessageQueue->CaretInfo = (PTHRDCARETINFO)(MessageQueue + 1);
    InitializeListHead(&MessageQueue->PostedMessagesListHead);
@@ -2061,7 +2063,7 @@ MsqCleanupMessageQueue(PTHREADINFO pti)
 }
 
 PUSER_MESSAGE_QUEUE FASTCALL
-MsqCreateMessageQueue(struct _ETHREAD *Thread)
+MsqCreateMessageQueue(PTHREADINFO pti)
 {
    PUSER_MESSAGE_QUEUE MessageQueue;
 
@@ -2078,7 +2080,7 @@ MsqCreateMessageQueue(struct _ETHREAD *Thread)
    /* hold at least one reference until it'll be destroyed */
    IntReferenceMessageQueue(MessageQueue);
    /* initialize the queue */
-   if (!MsqInitializeMessageQueue(Thread, MessageQueue))
+   if (!MsqInitializeMessageQueue(pti, MessageQueue))
    {
       IntDereferenceMessageQueue(MessageQueue);
       return NULL;
index 9130136..8cac101 100644 (file)
@@ -181,8 +181,8 @@ co_MsqPeekMouseMove(IN PUSER_MESSAGE_QUEUE MessageQueue,
                     IN UINT MsgFilterLow,
                     IN UINT MsgFilterHigh,
                     OUT MSG* pMsg);
-BOOLEAN FASTCALL MsqInitializeMessageQueue(struct _ETHREAD *Thread, PUSER_MESSAGE_QUEUE MessageQueue);
-PUSER_MESSAGE_QUEUE FASTCALL MsqCreateMessageQueue(struct _ETHREAD *Thread);
+BOOLEAN FASTCALL MsqInitializeMessageQueue(PTHREADINFO, PUSER_MESSAGE_QUEUE);
+PUSER_MESSAGE_QUEUE FASTCALL MsqCreateMessageQueue(PTHREADINFO);
 VOID FASTCALL MsqDestroyMessageQueue(PTHREADINFO);
 INIT_FUNCTION NTSTATUS NTAPI MsqInitializeImpl(VOID);
 BOOLEAN FASTCALL co_MsqDispatchOneSentMessage(PUSER_MESSAGE_QUEUE MessageQueue);