Hi,
I've not been able to get the kernel thread tests working on windows. The only thing I've found is that changing thread.c:
/* simulate a call to set_test_val(10) */ #if 0 stack = (int *)ctx.Esp; stack[-1] = 10; stack[-2] = ctx.Eip; ctx.Esp -= 2 * sizeof(int *); ctx.Eip = (DWORD)set_test_val; #endif
or even
#if 0 ctx.Eip = (DWORD)set_test_val; #endif
makes the test run instead of crashing. They still fail, but only for the last ok().
Unfortunatly this is way over my head. So I'd appreciate if someone could have a look.
What worries me (maybe needless) is that the test runs OK on Wine. So either we're way better or we implement things differently.
Cheers,
Paul.