Module: wine Branch: master Commit: 2902d8090a62efd464e6c26a9996cfe4059935b0 URL: http://source.winehq.org/git/wine.git/?a=commit;h=2902d8090a62efd464e6c26a99...
Author: Erich Hoover ehoover@mines.edu Date: Fri Feb 19 19:07:57 2010 -0700
kernel32/tests: Add test for 'all processors' flag on Vista and newer.
---
dlls/kernel32/tests/thread.c | 6 +++++- 1 files changed, 5 insertions(+), 1 deletions(-)
diff --git a/dlls/kernel32/tests/thread.c b/dlls/kernel32/tests/thread.c index 69203fe..83d13c5 100644 --- a/dlls/kernel32/tests/thread.c +++ b/dlls/kernel32/tests/thread.c @@ -780,7 +780,7 @@ static VOID test_GetThreadTimes(void) static VOID test_thread_processor(void) { HANDLE curthread,curproc; - DWORD_PTR processMask,systemMask; + DWORD_PTR processMask,systemMask,retMask; SYSTEM_INFO sysInfo; int error=0; BOOL is_wow64; @@ -803,6 +803,10 @@ static VOID test_thread_processor(void) "SetThreadAffinityMask failed\n"); ok(SetThreadAffinityMask(curthread,processMask+1)==0, "SetThreadAffinityMask passed for an illegal processor\n"); +/* NOTE: Pre-Vista does not recognize the "all processors" flag (all bits set) */ + retMask = SetThreadAffinityMask(curthread,~0UL); + ok(broken(retMask==0) || retMask==processMask, + "SetThreadAffinityMask(thread,-1) failed to request all processors.\n"); /* NOTE: This only works on WinNT/2000/XP) */ if (pSetThreadIdealProcessor) { SetLastError(0xdeadbeef);