=?UTF-8?Q?Michael=20M=C3=BCller=20?=: user32: Preserve beginning of extra data for MDI windows.
Alexandre Julliard
julliard at wine.codeweavers.com
Tue Apr 12 06:45:25 CDT 2016
Module: wine
Branch: stable
Commit: 59055be4562a15df4f898b49285c2a31acc10123
URL: http://source.winehq.org/git/wine.git/?a=commit;h=59055be4562a15df4f898b49285c2a31acc10123
Author: Michael Müller <michael at fds-team.de>
Date: Fri Feb 26 07:24:51 2016 +0100
user32: Preserve beginning of extra data for MDI windows.
Signed-off-by: Michael Müller <michael at fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian at fds-team.de>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
(cherry picked from commit 3c888a74c5c5811c46f09fc9a598fad722e9727b)
Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>
---
dlls/user32/mdi.c | 1 +
dlls/user32/tests/msg.c | 6 +++++-
2 files changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/user32/mdi.c b/dlls/user32/mdi.c
index b5a0473..b360528 100644
--- a/dlls/user32/mdi.c
+++ b/dlls/user32/mdi.c
@@ -127,6 +127,7 @@ typedef struct
* states it must keep coherency with USER32 on its own. This is true for
* Windows as well.
*/
+ LONG reserved;
UINT nActiveChildren;
HWND hwndChildMaximized;
HWND hwndActiveChild;
diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c
index 969b1af..58e1437 100644
--- a/dlls/user32/tests/msg.c
+++ b/dlls/user32/tests/msg.c
@@ -3377,6 +3377,7 @@ static void test_mdi_messages(void)
BOOL zoomed;
RECT rc;
HMENU hMenu = CreateMenu();
+ LONG val;
if (!mdi_RegisterWindowClasses()) assert(0);
@@ -3405,8 +3406,9 @@ static void test_mdi_messages(void)
rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top,
mdi_frame, 0, GetModuleHandleA(0), &client_cs);
assert(mdi_client);
- ok_sequence(WmCreateMDIclientSeq, "Create visible MDI client window", FALSE);
+ SetWindowLongA(mdi_client, 0, 0xdeadbeef);
+ ok_sequence(WmCreateMDIclientSeq, "Create visible MDI client window", FALSE);
ok(GetActiveWindow() == mdi_frame, "wrong active window %p\n", GetActiveWindow());
ok(GetFocus() == mdi_frame, "input focus should be on MDI frame not on %p\n", GetFocus());
@@ -3864,6 +3866,8 @@ static void test_mdi_messages(void)
SetFocus(0);
flush_sequence();
+ val = GetWindowLongA(mdi_client, 0);
+ ok(val == 0xdeadbeef || broken(val == 0) /* >= Win Vista */, "Expected 0xdeadbeef, got 0x%x\n", val);
DestroyWindow(mdi_client);
ok_sequence(WmDestroyMDIclientSeq, "Destroy MDI client window", FALSE);
More information about the wine-cvs
mailing list