winex11.drv: When copying window bits exclude an update region only if the parent doesn't clip its children.
Dmitry Timoshkov
dmitry at codeweavers.com
Thu Jan 27 02:35:33 CST 2011
This patch fixes the regression reported in the bug 25107.
---
dlls/winex11.drv/window.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diff --git a/dlls/winex11.drv/window.c b/dlls/winex11.drv/window.c
index 65c046b..a86a30e 100644
--- a/dlls/winex11.drv/window.c
+++ b/dlls/winex11.drv/window.c
@@ -1624,7 +1624,8 @@ static void move_window_bits( struct x11drv_win_data *data, const RECT *old_rect
hdc_src = hdc_dst = GetDCEx( data->hwnd, 0, DCX_CACHE );
}
- ExcludeUpdateRgn( hdc_dst, data->hwnd );
+ if (!parent || !(GetWindowLongW( parent, GWL_STYLE ) & WS_CLIPCHILDREN))
+ ExcludeUpdateRgn( hdc_dst, data->hwnd );
code = X11DRV_START_EXPOSURES;
ExtEscape( hdc_dst, X11DRV_ESCAPE, sizeof(code), (LPSTR)&code, 0, NULL );
--
1.7.3.5
More information about the wine-patches
mailing list