From 74ece17c6bd141c5a13b3aec7522303fb50bc472 Mon Sep 17 00:00:00 2001 From: Dan Hipschman Date: Fri, 4 Aug 2006 10:08:53 -0700 Subject: [PATCH] user: Call SetLastError in CreateWindowEx when WS_CHILD is set with no parent. --- dlls/user/tests/win.c | 2 +- dlls/user/win.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/dlls/user/tests/win.c b/dlls/user/tests/win.c index 9d3725380b1..42c6ed5a31f 100644 --- a/dlls/user/tests/win.c +++ b/dlls/user/tests/win.c @@ -140,7 +140,7 @@ static void test_parent_owner(void) SetLastError(0xdeadbeef); test = CreateWindowExA(0, "ToolWindowClass", "Tool window 1", WS_CHILD, 0, 0, 100, 100, 0, 0, 0, NULL ); - todo_wine ok( GetLastError() == ERROR_TLW_WITH_WSCHILD, "CreateWindowExA should call SetLastError\n" ); + ok( GetLastError() == ERROR_TLW_WITH_WSCHILD, "CreateWindowExA should call SetLastError\n" ); ok( !test, "WS_CHILD without parent created\n" ); /* desktop window */ diff --git a/dlls/user/win.c b/dlls/user/win.c index 592eeace8ad..a4f2c26455e 100644 --- a/dlls/user/win.c +++ b/dlls/user/win.c @@ -995,6 +995,7 @@ static HWND WIN_CreateWindowEx( CREATESTRUCTA *cs, ATOM classAtom, UINT flags ) if ((cs->style & (WS_CHILD|WS_POPUP)) == WS_CHILD) { WARN("No parent for child window\n" ); + SetLastError(ERROR_TLW_WITH_WSCHILD); return 0; /* WS_CHILD needs a parent, but WS_POPUP doesn't */ } if (classAtom != LOWORD(DESKTOP_CLASS_ATOM)) /* are we creating the desktop itself? */