- Fix ProcessPriorityClass case in NtQueryInformationProcess. Structure PROCESS_PRIORITY_CLASS should be returned. Tested in win vista

svn path=/trunk/; revision=41365
This commit is contained in:
Dmitry Chapyshev 2009-06-10 07:07:51 +00:00
parent b9a6ee158d
commit 89c5e30fd7

View file

@ -68,6 +68,7 @@ NtQueryInformationProcess(IN HANDLE ProcessHandle,
PPROCESS_BASIC_INFORMATION ProcessBasicInfo = PPROCESS_BASIC_INFORMATION ProcessBasicInfo =
(PPROCESS_BASIC_INFORMATION)ProcessInformation; (PPROCESS_BASIC_INFORMATION)ProcessInformation;
PKERNEL_USER_TIMES ProcessTime = (PKERNEL_USER_TIMES)ProcessInformation; PKERNEL_USER_TIMES ProcessTime = (PKERNEL_USER_TIMES)ProcessInformation;
PPROCESS_PRIORITY_CLASS PsPriorityClass = (PPROCESS_PRIORITY_CLASS)ProcessInformation;
ULONG HandleCount; ULONG HandleCount;
PPROCESS_SESSION_INFORMATION SessionInfo = PPROCESS_SESSION_INFORMATION SessionInfo =
(PPROCESS_SESSION_INFORMATION)ProcessInformation; (PPROCESS_SESSION_INFORMATION)ProcessInformation;
@ -559,7 +560,7 @@ NtQueryInformationProcess(IN HANDLE ProcessHandle,
case ProcessPriorityClass: case ProcessPriorityClass:
/* Set the return length*/ /* Set the return length*/
Length = sizeof(USHORT); Length = sizeof(PROCESS_PRIORITY_CLASS);
if (ProcessInformationLength != Length) if (ProcessInformationLength != Length)
{ {
@ -580,7 +581,8 @@ NtQueryInformationProcess(IN HANDLE ProcessHandle,
_SEH2_TRY _SEH2_TRY
{ {
/* Return current priority class */ /* Return current priority class */
*(PUSHORT)ProcessInformation = Process->PriorityClass; PsPriorityClass->PriorityClass = Process->PriorityClass;
PsPriorityClass->Foreground = FALSE;
} }
_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER) _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
{ {