Rebase against 561a5b8f84db68e608df022a8dbd71803f506946.

This commit is contained in:
Zebediah Figura 2022-06-09 18:45:26 -05:00
parent 37c1363814
commit 2d5e6b24dc
3 changed files with 25 additions and 21 deletions

View File

@ -51,7 +51,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "d95780ba39816e3eb1139366236f3835564beadd"
echo "561a5b8f84db68e608df022a8dbd71803f506946"
}
# Show version information
@ -3188,7 +3188,7 @@ fi
# | * [#37706] Fix return value of ScrollWindowEx for invisible windows
# |
# | Modified files:
# | * dlls/user32/painting.c
# | * dlls/win32u/dce.c
# |
if test "$enable_user32_ScrollWindowEx" -eq 1; then
patch_apply user32-ScrollWindowEx/0001-user32-Fix-return-value-of-ScrollWindowEx-for-invisi.patch

View File

@ -1,29 +1,33 @@
From 1b619dbaf833182f1b522271e980a58b057767d6 Mon Sep 17 00:00:00 2001
From 6d96e152773789f92da783e40969bf94624b7d61 Mon Sep 17 00:00:00 2001
From: Dmitry Timoshkov <dmitry@baikal.ru>
Date: Fri, 12 Dec 2014 05:06:31 +0100
Subject: user32: Fix return value of ScrollWindowEx for invisible windows.
Subject: [PATCH] win32u: Fix return value of ScrollWindowEx for invisible
windows.
---
dlls/user32/painting.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
dlls/win32u/dce.c | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/user32/painting.c b/dlls/user32/painting.c
index 5c1dc69..2cc7703 100644
--- a/dlls/user32/painting.c
+++ b/dlls/user32/painting.c
@@ -1430,10 +1430,10 @@ static INT scroll_window( HWND hwnd, INT dx, INT dy, const RECT *rect, const REC
diff --git a/dlls/win32u/dce.c b/dlls/win32u/dce.c
index 872112e4a24..4d56b23433e 100644
--- a/dlls/win32u/dce.c
+++ b/dlls/win32u/dce.c
@@ -1672,10 +1672,13 @@ INT WINAPI NtUserScrollWindowEx( HWND hwnd, INT dx, INT dy, const RECT *rect,
rdw_flags = (flags & SW_ERASE) && (flags & SW_INVALIDATE) ?
RDW_INVALIDATE | RDW_ERASE : RDW_INVALIDATE ;
RDW_INVALIDATE | RDW_ERASE : RDW_INVALIDATE;
- if (!WIN_IsWindowDrawable( hwnd, TRUE )) return ERROR;
hwnd = WIN_GetFullHandle( hwnd );
- if (!is_window_drawable( hwnd, TRUE )) return ERROR;
hwnd = get_full_window_handle( hwnd );
- GetClientRect(hwnd, &rc);
+ if (!WIN_IsWindowDrawable( hwnd, TRUE )) SetRectEmpty(&rc);
+ else GetClientRect(hwnd, &rc);
if (clipRect) IntersectRect(&cliprc,&rc,clipRect);
- get_client_rect( hwnd, &rc );
+ if (!is_window_drawable( hwnd, TRUE ))
+ SetRectEmpty( &rc );
+ else
+ get_client_rect( hwnd, &rc );
+
if (clip_rect) intersect_rect( &cliprc, &rc, clip_rect );
else cliprc = rc;
--
2.1.3
2.36.1

View File

@ -1 +1 @@
d95780ba39816e3eb1139366236f3835564beadd
561a5b8f84db68e608df022a8dbd71803f506946