kernel32: Don't set last error on success in OpenConsoleW.
This commit is contained in:
parent
b7bf2abdff
commit
39208d4d60
|
@ -307,7 +307,6 @@ HANDLE WINAPI OpenConsoleW(LPCWSTR name, DWORD access, BOOL inherit, DWORD creat
|
|||
req->access = access;
|
||||
req->attributes = inherit ? OBJ_INHERIT : 0;
|
||||
req->share = FILE_SHARE_READ | FILE_SHARE_WRITE;
|
||||
SetLastError(0);
|
||||
wine_server_call_err( req );
|
||||
ret = wine_server_ptr_handle( reply->handle );
|
||||
}
|
||||
|
|
|
@ -1062,6 +1062,25 @@ static void test_OpenConsoleW(void)
|
|||
"Expected GetLastError() to return %u for index %d, got %u\n",
|
||||
invalid_table[index].gle, index, GetLastError());
|
||||
}
|
||||
|
||||
/* OpenConsoleW should not touch the last error on success. */
|
||||
SetLastError(0xdeadbeef);
|
||||
ret = pOpenConsoleW(coninW, GENERIC_READ | GENERIC_WRITE, FALSE, OPEN_EXISTING);
|
||||
ok(ret != INVALID_HANDLE_VALUE,
|
||||
"Expected OpenConsoleW to return a valid handle\n");
|
||||
ok(GetLastError() == 0xdeadbeef,
|
||||
"Expected the last error to be untouched, got %u\n", GetLastError());
|
||||
if (ret != INVALID_HANDLE_VALUE)
|
||||
CloseHandle(ret);
|
||||
|
||||
SetLastError(0xdeadbeef);
|
||||
ret = pOpenConsoleW(conoutW, GENERIC_READ | GENERIC_WRITE, FALSE, OPEN_EXISTING);
|
||||
ok(ret != INVALID_HANDLE_VALUE,
|
||||
"Expected OpenConsoleW to return a valid handle\n");
|
||||
ok(GetLastError() == 0xdeadbeef,
|
||||
"Expected the last error to be untouched, got %u\n", GetLastError());
|
||||
if (ret != INVALID_HANDLE_VALUE)
|
||||
CloseHandle(ret);
|
||||
}
|
||||
|
||||
START_TEST(console)
|
||||
|
|
Loading…
Reference in New Issue