diff --git a/rostests/apitests/user32/CreateWindowEx.c b/rostests/apitests/user32/CreateWindowEx.c index d708e3aac4c..9c93df799ce 100644 --- a/rostests/apitests/user32/CreateWindowEx.c +++ b/rostests/apitests/user32/CreateWindowEx.c @@ -14,6 +14,19 @@ START_TEST(CreateWindowEx) HWND hWnd; DWORD dwError; + SetLastError(0x1234); + hWnd = CreateWindowExW(0, L"BUTTON", NULL, 0, 0, 0, 0, 0, NULL, NULL, NULL, NULL); + dwError = GetLastError(); + ok(hWnd != NULL, "hWnd = %p\n", hWnd); + ok(dwError == 0, "error = %lu\n", dwError); + DestroyWindow(hWnd); + + SetLastError(0x1234); + hWnd = CreateWindowExW(0, L"BUTTON", NULL, 0, 0, 0, 0, 0, (HWND)(LONG_PTR)-1, NULL, NULL, NULL); + dwError = GetLastError(); + ok(hWnd == NULL, "hWnd = %p\n", hWnd); + ok(dwError == ERROR_INVALID_WINDOW_HANDLE, "error = %lu\n", dwError); + SetLastError(0x1234); hWnd = CreateWindowExW(0, L"BUTTON", NULL, WS_CHILD, 0, 0, 0, 0, NULL, NULL, NULL, NULL); dwError = GetLastError(); @@ -25,4 +38,30 @@ START_TEST(CreateWindowEx) dwError = GetLastError(); ok(hWnd == NULL, "hWnd = %p\n", hWnd); ok(dwError == ERROR_INVALID_WINDOW_HANDLE, "error = %lu\n", dwError); + + SetLastError(0x1234); + hWnd = CreateWindowExW(0, L"BUTTON", NULL, WS_POPUP, 0, 0, 0, 0, NULL, NULL, NULL, NULL); + dwError = GetLastError(); + ok(hWnd != NULL, "hWnd = %p\n", hWnd); + ok(dwError == 0, "error = %lu\n", dwError); + DestroyWindow(hWnd); + + SetLastError(0x1234); + hWnd = CreateWindowExW(0, L"BUTTON", NULL, WS_POPUP, 0, 0, 0, 0, (HWND)(LONG_PTR)-1, NULL, NULL, NULL); + dwError = GetLastError(); + ok(hWnd == NULL, "hWnd = %p\n", hWnd); + ok(dwError == ERROR_INVALID_WINDOW_HANDLE, "error = %lu\n", dwError); + + SetLastError(0x1234); + hWnd = CreateWindowExW(0, L"BUTTON", NULL, WS_CHILD|WS_POPUP, 0, 0, 0, 0, NULL, NULL, NULL, NULL); + dwError = GetLastError(); + ok(hWnd != NULL, "hWnd = %p\n", hWnd); + ok(dwError == 0, "error = %lu\n", dwError); + DestroyWindow(hWnd); + + SetLastError(0x1234); + hWnd = CreateWindowExW(0, L"BUTTON", NULL, WS_CHILD|WS_POPUP, 0, 0, 0, 0, (HWND)(LONG_PTR)-1, NULL, NULL, NULL); + dwError = GetLastError(); + ok(hWnd == NULL, "hWnd = %p\n", hWnd); + ok(dwError == ERROR_INVALID_WINDOW_HANDLE, "error = %lu\n", dwError); }