diff --git a/windows/painting.c b/windows/painting.c index 33fdd81d89e..27e9a07d6d6 100644 --- a/windows/painting.c +++ b/windows/painting.c @@ -688,6 +688,10 @@ BOOL WINAPI RedrawWindow( HWND hwnd, const RECT *rectUpdate, if (!WIN_IsWindowDrawable( hwnd, !(flags & RDW_FRAME) )) return TRUE; + /* process pending events and messages before painting */ + if (flags & RDW_UPDATENOW) + MsgWaitForMultipleObjects( 0, NULL, FALSE, 0, QS_ALLINPUT ); + if (!(wndPtr = WIN_FindWndPtr( hwnd ))) return FALSE; if (TRACE_ON(win)) { @@ -709,11 +713,6 @@ BOOL WINAPI RedrawWindow( HWND hwnd, const RECT *rectUpdate, } } - - /* process pending events and messages before painting */ - if (flags & RDW_UPDATENOW) - MsgWaitForMultipleObjects( 0, NULL, FALSE, 0, QS_ALLINPUT ); - /* prepare an update region in window coordinates */ if( flags & RDW_FRAME )