Author: ion Date: Thu Feb 1 22:25:04 2007 New Revision: 25669
URL: http://svn.reactos.org/svn/reactos?rev=25669&view=rev Log: - Fix a bug in NtSetInformationThread which was causing 2nd-stage setup to freeze/crash. Fixes regression from 25631.
Modified: trunk/reactos/ntoskrnl/ps/query.c
Modified: trunk/reactos/ntoskrnl/ps/query.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ps/query.c?rev=256... ============================================================================== --- trunk/reactos/ntoskrnl/ps/query.c (original) +++ trunk/reactos/ntoskrnl/ps/query.c Thu Feb 1 22:25:04 2007 @@ -730,6 +730,7 @@ PTEB Teb; ULONG TlsIndex = 0; PVOID *ExpansionSlots; + PETHREAD ProcThread; PAGED_CODE();
/* Verify Information Class validity */ @@ -1021,14 +1022,14 @@ Process = Thread->ThreadsProcess;
/* Loop the threads */ - Thread = PsGetNextProcessThread(Process, NULL); - while (Thread) + ProcThread = PsGetNextProcessThread(Process, NULL); + while (ProcThread) { /* Acquire rundown */ - if (ExAcquireRundownProtection(&Thread->RundownProtect)) + if (ExAcquireRundownProtection(&ProcThread->RundownProtect)) { /* Get the TEB */ - Teb = Thread->Tcb.Teb; + Teb = ProcThread->Tcb.Teb; if (Teb) { /* Check if we're in the expansion range */ @@ -1054,11 +1055,11 @@ }
/* Release rundown */ - ExReleaseRundownProtection(&Thread->RundownProtect); + ExReleaseRundownProtection(&ProcThread->RundownProtect); }
/* Go to the next thread */ - Thread = PsGetNextProcessThread(Process, Thread); + ProcThread = PsGetNextProcessThread(Process, ProcThread); }
/* All done */