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.


Reply via email to