[1/3] user32/tests: Comment-out PostQuitMessage (causes tests skip)
Alexey Slepov
sir-lexa at yandex.ru
Thu May 31 15:28:31 CDT 2012
Guys, so how about this?
diff --git a/dlls/user32/tests/dialog.c b/dlls/user32/tests/dialog.c
index 6bd34b3..4301c8d 100644
--- a/dlls/user32/tests/dialog.c
+++ b/dlls/user32/tests/dialog.c
@@ -1027,9 +1027,6 @@ static INT_PTR CALLBACK DestroyOnCloseDlgWinProc (HWND hDlg, UINT uiMsg,
case WM_CLOSE:
DestroyWindow(hDlg);
return TRUE;
- case WM_DESTROY:
- PostQuitMessage(0);
- return TRUE;
}
return FALSE;
}
29.05.2012, 01:16, "Alexey Slepov" <sir-lexa at yandex.ru>:
> I figured out now.
> As described in wine sources, PostQuitMessage() sets a flag in the thread's message queue that signals it to generate
> a WM_QUIT message when there are no other pending sent or posted messages in the queue.
> The tests with skipped testcases are those which use WM_TIMER messages - test_timer_message() and my test.
> In DIALOG_DoDialogBox() there is clearly defined that on receiving WM_QUIT message the window is destroyed. So timer messages just do not reach queue.
>
> I thought about solution again and now I think that it would be better to remove at all lines about WM_DESTROY handling, such as we don't handle this message. And let it be handled by default. That code does nothing except posting WM_QUIT messages leading to test skipping. (test passed on WineBot)
>
> What do you think?
>
>
> 28.05.2012, 10:32, "Dmitry Timoshkov" <dmitry at baikal.ru>:
>> sir-lexa <sir-lexa at yandex.ru> wrote:
>>> case WM_DESTROY:
>>> - PostQuitMessage(0);
>>> + /* PostQuitMessage(0); It lets some tests to be skipped */
>>> return TRUE;
>> This is not acceptable, there is much more behind the scene. You need
>> to figure out the real reason of skipping the tests.
>>
>> --
>> Dmitry.
More information about the wine-devel
mailing list