kernel32/tests: Fix 32-bit thread test failures on NT 5.x 64bit.

This commit is contained in:
Detlef Riekenberg 2012-11-13 23:50:13 +01:00 committed by Alexandre Julliard
parent 1f0908984c
commit 5c1e6cf7cd
1 changed files with 10 additions and 7 deletions

View File

@ -961,16 +961,19 @@ static void test_SetThreadContext(void)
ctx.ContextFlags = CONTEXT_FULL; ctx.ContextFlags = CONTEXT_FULL;
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = GetThreadContext( thread, &ctx ); ret = GetThreadContext( thread, &ctx );
ok( !ret, "GetThreadContext succeeded\n" ); ok( (!ret && (GetLastError() == ERROR_GEN_FAILURE)) ||
ok( GetLastError() == ERROR_GEN_FAILURE || broken(GetLastError() == ERROR_INVALID_HANDLE), /* win2k */ (!ret && broken(GetLastError() == ERROR_INVALID_HANDLE)) || /* win2k */
"wrong error %u\n", GetLastError() ); broken(ret), /* 32bit application on NT 5.x 64bit */
"got %d with %u (expected FALSE with ERROR_GEN_FAILURE)\n",
ret, GetLastError() );
SetLastError(0xdeadbeef); SetLastError(0xdeadbeef);
ret = SetThreadContext( thread, &ctx ); ret = SetThreadContext( thread, &ctx );
ok( !ret, "SetThreadContext succeeded\n" ); ok( (!ret && ((GetLastError() == ERROR_GEN_FAILURE) || (GetLastError() == ERROR_ACCESS_DENIED))) ||
ok( GetLastError() == ERROR_GEN_FAILURE || GetLastError() == ERROR_ACCESS_DENIED || (!ret && broken(GetLastError() == ERROR_INVALID_HANDLE)) || /* win2k */
broken(GetLastError() == ERROR_INVALID_HANDLE), /* win2k */ broken(ret), /* 32bit application on NT 5.x 64bit */
"wrong error %u\n", GetLastError() ); "got %d with %u (expected FALSE with ERROR_GEN_FAILURE or ERROR_ACCESS_DENIED)\n",
ret, GetLastError() );
CloseHandle( thread ); CloseHandle( thread );
} }