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" <[email protected]>: > 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" <[email protected]>: >> sir-lexa <[email protected]> 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.
