Author: jimtabor
Date: Wed Apr  6 12:23:54 2011
New Revision: 51264

URL: http://svn.reactos.org/svn/reactos?rev=51264&view=rev
Log:
[Win32k]
- The Reak fix to unfocused explorer minimize hang, spotted by R3dDr4g0n 
<[email protected]>.

Modified:
    trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c
    trunk/reactos/subsystems/win32/win32k/ntuser/window.c

Modified: trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c?rev=51264&r1=51263&r2=51264&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c [iso-8859-1] 
(original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/msgqueue.c [iso-8859-1] Wed 
Apr  6 12:23:54 2011
@@ -1353,28 +1353,14 @@
 co_MsqWaitForNewMessages(PUSER_MESSAGE_QUEUE MessageQueue, PWND WndFilter,
                          UINT MsgFilterMin, UINT MsgFilterMax)
 {
-   PTHREADINFO pti;
-   NTSTATUS ret = STATUS_SUCCESS;
-   
-   pti = MessageQueue->Thread->Tcb.Win32Thread;
-
-   while ( co_MsqDispatchOneSentMessage(MessageQueue) );
-
-   if (pti->pcti->fsWakeBits & pti->pcti->fsChangeBits )
-   {
-      return ret;
-   }
-
-   pti->pClientInfo->cSpins = 0;
-   IdlePing();
+   NTSTATUS ret;
    UserLeaveCo();
-   ret = KeWaitForSingleObject(MessageQueue->NewMessages,
-                              Executive,
-                              UserMode,
-                              FALSE, 
-                              NULL);
+   ret = KeWaitForSingleObject( MessageQueue->NewMessages,
+                                UserRequest,
+                                UserMode,
+                                FALSE, 
+                                NULL );
    UserEnterCo();
-   IdlePong();
    return ret;
 }
 

Modified: trunk/reactos/subsystems/win32/win32k/ntuser/window.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/ntuser/window.c?rev=51264&r1=51263&r2=51264&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/ntuser/window.c [iso-8859-1] 
(original)
+++ trunk/reactos/subsystems/win32/win32k/ntuser/window.c [iso-8859-1] Wed Apr  
6 12:23:54 2011
@@ -1530,7 +1530,7 @@
         if (pWindow->spwndParent && pWindow->spwndParent != 
UserGetDesktopWindow())
         {
             USER_REFERENCE_ENTRY Ref;
-            UserRefObjectCo(pWindow->spwndParent, &Ref); // Fix explorer 
minimize hang.
+            UserRefObjectCo(pWindow->spwndParent, &Ref);
             // Should be co_IntSendMessage please retest, Ref to Chg, revision 
51254...
             co_IntSendMessageNoWait( pWindow->spwndParent->head.h,
                                      WM_PARENTNOTIFY,


Reply via email to