Fix remaining thread tests on WinME.
This commit is contained in:
parent
3a29a309a4
commit
3ccc0a6265
|
@ -385,7 +385,7 @@ static VOID test_thread_priority(void)
|
||||||
HANDLE curthread,access_thread;
|
HANDLE curthread,access_thread;
|
||||||
DWORD curthreadId,exitCode;
|
DWORD curthreadId,exitCode;
|
||||||
int min_priority=-2,max_priority=2;
|
int min_priority=-2,max_priority=2;
|
||||||
BOOL disabled;
|
BOOL disabled,rc;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
curthread=GetCurrentThread();
|
curthread=GetCurrentThread();
|
||||||
|
@ -408,10 +408,6 @@ static VOID test_thread_priority(void)
|
||||||
if (access_thread!=NULL) {
|
if (access_thread!=NULL) {
|
||||||
obey_ar(SetThreadPriority(access_thread,1)==0);
|
obey_ar(SetThreadPriority(access_thread,1)==0);
|
||||||
obey_ar(GetThreadPriority(access_thread)==THREAD_PRIORITY_ERROR_RETURN);
|
obey_ar(GetThreadPriority(access_thread)==THREAD_PRIORITY_ERROR_RETURN);
|
||||||
if (pSetThreadPriorityBoost)
|
|
||||||
obey_ar(pSetThreadPriorityBoost(access_thread,1)==0);
|
|
||||||
if (pGetThreadPriorityBoost)
|
|
||||||
obey_ar(pGetThreadPriorityBoost(access_thread,&disabled)==0);
|
|
||||||
obey_ar(GetExitCodeThread(access_thread,&exitCode)==0);
|
obey_ar(GetExitCodeThread(access_thread,&exitCode)==0);
|
||||||
ok(CloseHandle(access_thread),"Error Closing thread handle\n");
|
ok(CloseHandle(access_thread),"Error Closing thread handle\n");
|
||||||
}
|
}
|
||||||
|
@ -436,27 +432,39 @@ static VOID test_thread_priority(void)
|
||||||
ok(SetThreadPriority(curthread,0)!=0,"SetThreadPriority Failed\n");
|
ok(SetThreadPriority(curthread,0)!=0,"SetThreadPriority Failed\n");
|
||||||
|
|
||||||
/* Check thread priority boost */
|
/* Check thread priority boost */
|
||||||
if (pGetThreadPriorityBoost && pSetThreadPriorityBoost) {
|
if (!pGetThreadPriorityBoost || !pSetThreadPriorityBoost)
|
||||||
BOOL rc;
|
return; /* Win9x */
|
||||||
todo_wine {
|
|
||||||
SetLastError(0);
|
|
||||||
rc=pGetThreadPriorityBoost(curthread,&disabled);
|
|
||||||
if (rc!=0 || GetLastError()!=ERROR_CALL_NOT_IMPLEMENTED) {
|
|
||||||
ok(rc!=0,"error=%ld\n",GetLastError());
|
|
||||||
|
|
||||||
rc = pSetThreadPriorityBoost(curthread,1);
|
SetLastError(0xdeadbeef);
|
||||||
ok( rc != 0, "error=%ld\n",GetLastError());
|
rc=pGetThreadPriorityBoost(curthread,&disabled);
|
||||||
rc=pGetThreadPriorityBoost(curthread,&disabled);
|
if (rc==0 && GetLastError()==ERROR_CALL_NOT_IMPLEMENTED)
|
||||||
ok(rc!=0 && disabled==1,
|
return; /* WinME */
|
||||||
"rc=%d error=%ld disabled=%d\n",rc,GetLastError(),disabled);
|
|
||||||
|
|
||||||
rc = pSetThreadPriorityBoost(curthread,0);
|
/* check that access control is obeyed */
|
||||||
ok( rc != 0, "error=%ld\n",GetLastError());
|
access_thread=pOpenThread(THREAD_ALL_ACCESS &
|
||||||
rc=pGetThreadPriorityBoost(curthread,&disabled);
|
(~THREAD_QUERY_INFORMATION) & (~THREAD_SET_INFORMATION),
|
||||||
ok(rc!=0 && disabled==0,
|
0,curthreadId);
|
||||||
"rc=%d error=%ld disabled=%d\n",rc,GetLastError(),disabled);
|
ok(access_thread!=NULL,"OpenThread returned an invalid handle\n");
|
||||||
}
|
if (access_thread!=NULL) {
|
||||||
}
|
obey_ar(pSetThreadPriorityBoost(access_thread,1)==0);
|
||||||
|
obey_ar(pGetThreadPriorityBoost(access_thread,&disabled)==0);
|
||||||
|
ok(CloseHandle(access_thread),"Error Closing thread handle\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
todo_wine {
|
||||||
|
ok(rc!=0,"error=%ld\n",GetLastError());
|
||||||
|
|
||||||
|
rc = pSetThreadPriorityBoost(curthread,1);
|
||||||
|
ok( rc != 0, "error=%ld\n",GetLastError());
|
||||||
|
rc=pGetThreadPriorityBoost(curthread,&disabled);
|
||||||
|
ok(rc!=0 && disabled==1,
|
||||||
|
"rc=%d error=%ld disabled=%d\n",rc,GetLastError(),disabled);
|
||||||
|
|
||||||
|
rc = pSetThreadPriorityBoost(curthread,0);
|
||||||
|
ok( rc != 0, "error=%ld\n",GetLastError());
|
||||||
|
rc=pGetThreadPriorityBoost(curthread,&disabled);
|
||||||
|
ok(rc!=0 && disabled==0,
|
||||||
|
"rc=%d error=%ld disabled=%d\n",rc,GetLastError(),disabled);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -482,12 +490,6 @@ static VOID test_GetThreadTimes(void)
|
||||||
ok(ResumeThread(thread)==1,"Resume thread returned an invalid value\n");
|
ok(ResumeThread(thread)==1,"Resume thread returned an invalid value\n");
|
||||||
ok(WaitForSingleObject(thread,5000)==WAIT_OBJECT_0,
|
ok(WaitForSingleObject(thread,5000)==WAIT_OBJECT_0,
|
||||||
"ResumeThread didn't work\n");
|
"ResumeThread didn't work\n");
|
||||||
if(access_thread!=NULL) {
|
|
||||||
error=GetThreadTimes(access_thread,&creationTime,&exitTime,
|
|
||||||
&kernelTime,&userTime);
|
|
||||||
obey_ar(error==0);
|
|
||||||
ok(CloseHandle(access_thread)!=0,"CloseHandle Failed\n");
|
|
||||||
}
|
|
||||||
creationTime.dwLowDateTime=99; creationTime.dwHighDateTime=99;
|
creationTime.dwLowDateTime=99; creationTime.dwHighDateTime=99;
|
||||||
exitTime.dwLowDateTime=99; exitTime.dwHighDateTime=99;
|
exitTime.dwLowDateTime=99; exitTime.dwHighDateTime=99;
|
||||||
kernelTime.dwLowDateTime=99; kernelTime.dwHighDateTime=99;
|
kernelTime.dwLowDateTime=99; kernelTime.dwHighDateTime=99;
|
||||||
|
@ -506,6 +508,15 @@ static VOID test_GetThreadTimes(void)
|
||||||
ok(userTime.dwLowDateTime!=99 || userTime.dwHighDateTime!=99,
|
ok(userTime.dwLowDateTime!=99 || userTime.dwHighDateTime!=99,
|
||||||
"userTime was invalid\n");
|
"userTime was invalid\n");
|
||||||
ok(CloseHandle(thread)!=0,"CloseHandle failed\n");
|
ok(CloseHandle(thread)!=0,"CloseHandle failed\n");
|
||||||
|
if(access_thread!=NULL)
|
||||||
|
{
|
||||||
|
error=GetThreadTimes(access_thread,&creationTime,&exitTime,
|
||||||
|
&kernelTime,&userTime);
|
||||||
|
obey_ar(error==0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(access_thread!=NULL) {
|
||||||
|
ok(CloseHandle(access_thread)!=0,"CloseHandle Failed\n");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue