Alexandre Julliard : user32: Check for the need to flush window surfaces every time a window finishes painting .
Alexandre Julliard
julliard at winehq.org
Tue Sep 11 16:59:07 CDT 2012
Module: wine
Branch: master
Commit: 1a4a1e53233f5313e969fadd9cac006dd97c162a
URL: http://source.winehq.org/git/wine.git/?a=commit;h=1a4a1e53233f5313e969fadd9cac006dd97c162a
Author: Alexandre Julliard <julliard at winehq.org>
Date: Tue Sep 11 19:14:05 2012 +0200
user32: Check for the need to flush window surfaces every time a window finishes painting.
---
dlls/user32/painting.c | 4 +---
1 files changed, 1 insertions(+), 3 deletions(-)
diff --git a/dlls/user32/painting.c b/dlls/user32/painting.c
index 4def070..1a6de87 100644
--- a/dlls/user32/painting.c
+++ b/dlls/user32/painting.c
@@ -805,7 +805,6 @@ void move_window_bits( HWND hwnd, struct window_surface *old_surface,
static void update_now( HWND hwnd, UINT rdw_flags )
{
HWND child = 0;
- int count = 0;
/* desktop window never gets WM_PAINT, only WM_ERASEBKGND */
if (hwnd == GetDesktopWindow()) erase_now( hwnd, rdw_flags | RDW_NOCHILDREN );
@@ -822,10 +821,8 @@ static void update_now( HWND hwnd, UINT rdw_flags )
if (!flags) break; /* nothing more to do */
SendMessageW( child, WM_PAINT, 0, 0 );
- count++;
if (rdw_flags & RDW_NOCHILDREN) break;
}
- if (count) flush_window_surfaces( FALSE );
}
@@ -936,6 +933,7 @@ BOOL WINAPI EndPaint( HWND hwnd, const PAINTSTRUCT *lps )
if (!lps) return FALSE;
release_dc( hwnd, lps->hdc, TRUE );
ShowCaret( hwnd );
+ flush_window_surfaces( FALSE );
return TRUE;
}
More information about the wine-cvs
mailing list