kernel32/tests: Fix thread function tests
André Hentschel
nerv at dawncrow.de
Wed Dec 22 14:11:27 CST 2010
This is on real Hardware:
http://test.winehq.org/data/1cc46828f14a5d9fa0c63a99f2eba24270160f25/win7_ah-ult-adm-mingw64/kernel32:thread.html
Laptop with 6 core i7 and hyperthreading
maybe it's the hyperthreading?
---
dlls/kernel32/tests/thread.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/dlls/kernel32/tests/thread.c b/dlls/kernel32/tests/thread.c
index fe1cc7d..1aeedeb 100644
--- a/dlls/kernel32/tests/thread.c
+++ b/dlls/kernel32/tests/thread.c
@@ -825,7 +825,7 @@ static VOID test_thread_processor(void)
retMask = SetThreadAffinityMask(curthread,~(ULONG_PTR)0 >> 3);
ok(retMask == processMask, "SetThreadAffinityMask failed\n");
retMask = SetThreadAffinityMask(curthread,~(ULONG_PTR)1);
- ok(retMask == 0, "SetThreadAffinityMask succeeded\n");
+ ok(retMask == 0 || retMask == processMask, "SetThreadAffinityMask returned an incorrect value\n");
}
/* NOTE: This only works on WinNT/2000/XP) */
if (pSetThreadIdealProcessor) {
@@ -861,7 +861,10 @@ static VOID test_thread_processor(void)
}
error=pSetThreadIdealProcessor(curthread,MAXIMUM_PROCESSORS);
- ok(error==0, "SetThreadIdealProcessor returned an incorrect value\n");
+ if (retMask == processMask && sizeof(ULONG_PTR) > sizeof(ULONG))
+ ok(error!=0, "SetThreadIdealProcessor returned 0\n");
+ else
+ ok(error==0, "SetThreadIdealProcessor returned an incorrect value\n");
}
}
--
Best Regards, André Hentschel
More information about the wine-patches
mailing list