From: Dmitry Timoshkov <dmitry(a)baikal.ru> Signed-off-by: Dmitry Timoshkov <dmitry(a)baikal.ru> --- dlls/win32u/dce.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/dlls/win32u/dce.c b/dlls/win32u/dce.c index 3e258d837dd..8f804b9c7ce 100644 --- a/dlls/win32u/dce.c +++ b/dlls/win32u/dce.c @@ -1594,6 +1594,8 @@ static BOOL send_erase( HWND hwnd, UINT flags, HRGN client_rgn, HDC hdc = 0; RECT dummy; + TRACE( "hwnd %p, flags %08x, client_rgn %p\n", hwnd, flags, client_rgn ); + if (!clip_rect) clip_rect = &dummy; if (hdc_ret || (flags & UPDATE_ERASE)) { @@ -1604,6 +1606,13 @@ static BOOL send_erase( HWND hwnd, UINT flags, HRGN client_rgn, { INT type = NtGdiGetAppClipBox( hdc, clip_rect ); + if (get_class_long( hwnd, GCL_STYLE, FALSE ) & CS_PARENTDC) + { + RECT client_rect; + get_client_rect( hwnd, &client_rect, get_thread_dpi() ); + intersect_rect( clip_rect, clip_rect, &client_rect ); + } + if (flags & UPDATE_ERASE) { /* don't erase if the clip box is empty */ -- GitLab https://gitlab.winehq.org/wine/wine/-/merge_requests/5665