- Fix wine msg.c:test_quit_message tests.

svn path=/trunk/; revision=66238
This commit is contained in:
James Tabor 2015-02-12 21:33:43 +00:00
parent b390d903ad
commit 56ed054411
2 changed files with 8 additions and 10 deletions

View file

@ -848,8 +848,8 @@ co_IntPeekMessage( PMSG Msg,
return TRUE;
}
/* Now look for a quit message. */
if (pti->QuitPosted)
/* Only check for quit messages if not posted messages pending. */
if (ProcessMask & QS_POSTMESSAGE && pti->QuitPosted)
{
/* According to the PSDK, WM_QUIT messages are always returned, regardless
of the filter specified */
@ -1222,14 +1222,7 @@ UserPostMessage( HWND Wnd,
Message.lParam = lParam;
}
if (WM_QUIT == Msg)
{
MsqPostQuitMessage(pti, wParam);
}
else
{
MsqPostMessage(pti, &Message, FALSE, QS_POSTMESSAGE, 0, ExtraInfo);
}
MsqPostMessage(pti, &Message, FALSE, QS_POSTMESSAGE, 0, ExtraInfo);
}
return TRUE;
}

View file

@ -932,6 +932,11 @@ MsqRemoveWindowMessagesFromQueue(PWND Window)
ListEntry);
if (PostedMessage->Msg.hwnd == Window->head.h)
{
if (PostedMessage->Msg.message == WM_QUIT && pti->QuitPosted == 0)
{
pti->QuitPosted = 1;
pti->exitCode = PostedMessage->Msg.wParam;
}
RemoveEntryList(&PostedMessage->ListEntry);
ClearMsgBitsMask(pti, PostedMessage->QS_Flags);
MsqDestroyMessage(PostedMessage);