USER32: Don't call NtYieldExecution in PeekMessage

Felix Nawothnig felix.nawothnig at t-online.de
Tue Aug 2 10:57:36 CDT 2005


See wine-devel - this makes the test app output 100/100/100 (it should 
be 100/0/0 but I dunno where the last timeslice comes from... 
MsgWaitForMultipleObjectsEx maybe?)

ChangeLog:
Don't call NtYieldExecution in PeekMessage
-------------- next part --------------
Index: message.c
===================================================================
RCS file: /home/wine/wine/dlls/user/message.c,v
retrieving revision 1.87
diff -u -r1.87 message.c
--- message.c	26 Jul 2005 15:55:42 -0000	1.87
+++ message.c	2 Aug 2005 15:52:15 -0000
@@ -2693,16 +2693,8 @@
     for (;;)
     {
         if (!peek_message( &msg, hwnd, first, last, (flags & PM_REMOVE) ? GET_MSG_REMOVE : 0 ))
-        {
-            if (!(flags & PM_NOYIELD))
-            {
-                DWORD count;
-                ReleaseThunkLock(&count);
-                NtYieldExecution();
-                if (count) RestoreThunkLock(count);
-            }
             return FALSE;
-        }
+	    
         if (msg.message & 0x80000000)
         {
             handle_internal_message( msg.hwnd, msg.message, msg.wParam, msg.lParam );


More information about the wine-patches mailing list