Module: wine Branch: master Commit: ffe9ace917ede1c83551f1c985b4bcf3bc0a2de7 URL: http://source.winehq.org/git/wine.git/?a=commit;h=ffe9ace917ede1c83551f1c985...
Author: Alexandre Julliard julliard@winehq.org Date: Wed Dec 23 12:13:44 2009 +0100
user32/tests: Fix some last error checks for WoW64.
---
dlls/user32/tests/clipboard.c | 6 ++++-- dlls/user32/tests/menu.c | 5 +++-- dlls/user32/tests/winstation.c | 15 ++++++++++----- 3 files changed, 17 insertions(+), 9 deletions(-)
diff --git a/dlls/user32/tests/clipboard.c b/dlls/user32/tests/clipboard.c index e2ba2f9..a0d0fe9 100644 --- a/dlls/user32/tests/clipboard.c +++ b/dlls/user32/tests/clipboard.c @@ -56,7 +56,8 @@ static void test_ClipboardOwner(void)
SetLastError(0xdeadbeef); ok(!CloseClipboard(), "CloseClipboard should fail if clipboard wasn't open\n"); - test_last_error(ERROR_CLIPBOARD_NOT_OPEN); + ok(GetLastError() == ERROR_CLIPBOARD_NOT_OPEN || broken(GetLastError() == 0xdeadbeef), /* wow64 */ + "wrong error %u\n", GetLastError());
ok(OpenClipboard(0), "OpenClipboard failed\n"); ok(!GetClipboardOwner(), "clipboard should still be not owned\n"); @@ -188,7 +189,8 @@ todo_wine
SetLastError(0xdeadbeef); ok(!EmptyClipboard(), "EmptyClipboard should fail if clipboard wasn't open\n"); - test_last_error(ERROR_CLIPBOARD_NOT_OPEN); + ok(GetLastError() == ERROR_CLIPBOARD_NOT_OPEN || broken(GetLastError() == 0xdeadbeef), /* wow64 */ + "Wrong error %u\n", GetLastError()); }
static HGLOBAL create_text(void) diff --git a/dlls/user32/tests/menu.c b/dlls/user32/tests/menu.c index 56535ae..88e2753 100644 --- a/dlls/user32/tests/menu.c +++ b/dlls/user32/tests/menu.c @@ -390,8 +390,9 @@ static void test_subpopup_locked_by_menu(void) ok( ret == itemid , "TrackPopupMenu returned %d error is %d\n", ret, gle); } ok( gle == 0 || - broken( gle == ERROR_INVALID_PARAMETER), /* win2k0 */ - "Last error is %d\n", gle); + broken(gle == 0xdeadbeef) || /* wow64 */ + broken(gle == ERROR_INVALID_PARAMETER), /* win2k0 */ + "Last error is %d\n", gle); } /* clean up */ DestroyMenu( hmenu); diff --git a/dlls/user32/tests/winstation.c b/dlls/user32/tests/winstation.c index 596e9ff..7be74f2 100644 --- a/dlls/user32/tests/winstation.c +++ b/dlls/user32/tests/winstation.c @@ -76,7 +76,8 @@ static DWORD CALLBACK thread( LPVOID arg ) ok( GetLastError() == ERROR_INVALID_HANDLE, "bad last error %d\n", GetLastError() ); SetLastError( 0xdeadbeef ); ok( !CloseDesktop( d1 ), "CloseDesktop succeeded\n" ); - ok( GetLastError() == ERROR_BUSY, "bad last error %d\n", GetLastError() ); + ok( GetLastError() == ERROR_BUSY || broken(GetLastError() == 0xdeadbeef), /* wow64 */ + "bad last error %d\n", GetLastError() ); print_object( d1 ); d2 = CreateDesktop( "foobar2", NULL, NULL, 0, DESKTOP_ALL_ACCESS, NULL ); trace( "created desktop %p\n", d2 ); @@ -84,7 +85,8 @@ static DWORD CALLBACK thread( LPVOID arg )
SetLastError( 0xdeadbeef ); ok( !SetThreadDesktop( d2 ), "set thread desktop succeeded with existing window\n" ); - ok( GetLastError() == ERROR_BUSY, "bad last error %d\n", GetLastError() ); + ok( GetLastError() == ERROR_BUSY || broken(GetLastError() == 0xdeadbeef), /* wow64 */ + "bad last error %d\n", GetLastError() );
DestroyWindow( hwnd ); ok( SetThreadDesktop( d2 ), "set thread desktop failed\n" ); @@ -139,7 +141,8 @@ static void test_handles(void) ok( w2 != w1, "CreateWindowStation returned default handle\n" ); SetLastError( 0xdeadbeef ); ok( !CloseDesktop( (HDESK)w2 ), "CloseDesktop succeeded on win station\n" ); - ok( GetLastError() == ERROR_INVALID_HANDLE, "bad last error %d\n", GetLastError() ); + ok( GetLastError() == ERROR_INVALID_HANDLE || broken(GetLastError() == 0xdeadbeef), /* wow64 */ + "bad last error %d\n", GetLastError() ); ok( CloseWindowStation( w2 ), "CloseWindowStation failed\n" );
w2 = CreateWindowStation("WinSta0", 0, WINSTA_ALL_ACCESS, NULL ); @@ -200,7 +203,8 @@ static void test_handles(void)
SetLastError( 0xdeadbeef ); ok( !CloseDesktop(d1), "closing thread desktop succeeded\n" ); - ok( GetLastError() == ERROR_BUSY, "bad last error %d\n", GetLastError() ); + ok( GetLastError() == ERROR_BUSY || broken(GetLastError() == 0xdeadbeef), /* wow64 */ + "bad last error %d\n", GetLastError() );
SetLastError( 0xdeadbeef ); if (CloseHandle( d1 )) /* succeeds on nt4 */ @@ -225,7 +229,8 @@ static void test_handles(void) ok( d2 != 0, "create foobar desktop failed\n" ); SetLastError( 0xdeadbeef ); ok( !CloseWindowStation( (HWINSTA)d2 ), "CloseWindowStation succeeded on desktop\n" ); - ok( GetLastError() == ERROR_INVALID_HANDLE, "bad last error %d\n", GetLastError() ); + ok( GetLastError() == ERROR_INVALID_HANDLE || broken(GetLastError() == 0xdeadbeef), /* wow64 */ + "bad last error %d\n", GetLastError() );
SetLastError( 0xdeadbeef ); d3 = CreateDesktop( "foobar", NULL, NULL, 0, DESKTOP_ALL_ACCESS, NULL );