Dan Hipschman : user: Call SetLastError in CreateWindowEx when WS_CHILD is set with no parent.

Alexandre Julliard julliard at wine.codeweavers.com
Fri Aug 4 14:57:29 CDT 2006


Module: wine
Branch: refs/heads/master
Commit: 74ece17c6bd141c5a13b3aec7522303fb50bc472
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=74ece17c6bd141c5a13b3aec7522303fb50bc472

Author: Dan Hipschman <dsh at linux.ucla.edu>
Date:   Fri Aug  4 10:08:53 2006 -0700

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 deletions(-)

diff --git a/dlls/user/tests/win.c b/dlls/user/tests/win.c
index 9d37253..42c6ed5 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 592eeac..a4f2c26 100644
--- a/dlls/user/win.c
+++ b/dlls/user/win.c
@@ -995,6 +995,7 @@ static HWND WIN_CreateWindowEx( CREATEST
         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? */




More information about the wine-cvs mailing list