http://bugs.winehq.org/show_bug.cgi?id=11582
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |user32 Hardware|Other |x86 Version|unspecified |0.9.55. Summary|Flash 5 Trial hangs when |Macromedia Flash 5 Trial |you click "Try" |hangs when you click "Try" | |(ShowWindow operations | |should avoid potentially | |blocking inter-thread | |SendMessage if show command | |is no-op) OS|other |Linux
--- Comment #11 from Anastasius Focht focht@gmx.net --- Hello folks,
still present.
Actually bug 35229 has the same manifestation, merging both bugs together.
Same thing here: the tool window is already hidden hence ShowWindow( toolWindow, SW_HIDE) should be essentially a no-op.
Wine needs to check first if the 'show' command turns out a no-op, not involving any message handling to avoid the potentially blocking SendMessage() to the thread owning the window.
Source: http://source.winehq.org/git/wine.git/blob/b423532f94efe9842d4c7e30166a4a2f2...
--- snip --- /*********************************************************************** * ShowWindow (USER32.@) */ BOOL WINAPI ShowWindow( HWND hwnd, INT cmd ) { HWND full_handle;
if (is_broadcast(hwnd)) { SetLastError( ERROR_INVALID_PARAMETER ); return FALSE; } if ((full_handle = WIN_IsCurrentThread( hwnd ))) return show_window( full_handle, cmd );
return SendMessageW( hwnd, WM_WINE_SHOWWINDOW, cmd, 0 ); } --- snip ---
Regards