Commit fd71ef1b authored by Michael Kaufmann's avatar Michael Kaufmann Committed by Alexandre Julliard

user: Remove internal messages from the message queue before handling them.

parent cb8fe1dd
...@@ -2728,9 +2728,14 @@ BOOL WINAPI PeekMessageW( MSG *msg_out, HWND hwnd, UINT first, UINT last, UINT f ...@@ -2728,9 +2728,14 @@ BOOL WINAPI PeekMessageW( MSG *msg_out, HWND hwnd, UINT first, UINT last, UINT f
} }
if (msg.message & 0x80000000) if (msg.message & 0x80000000)
{ {
handle_internal_message( msg.hwnd, msg.message, msg.wParam, msg.lParam ); if (!(flags & PM_REMOVE))
if (!(flags & PM_REMOVE)) /* have to remove it explicitly */ {
/* Have to remove the message explicitly.
Do this before handling it, because the message handler may
call PeekMessage again */
peek_message( &msg, msg.hwnd, msg.message, msg.message, GET_MSG_REMOVE ); peek_message( &msg, msg.hwnd, msg.message, msg.message, GET_MSG_REMOVE );
}
handle_internal_message( msg.hwnd, msg.message, msg.wParam, msg.lParam );
} }
else break; else break;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment