- Fix MiSyncThreadProcessViews to hack-sync the next thread's ETHREAD too (spotted by Alex)

svn path=/trunk/; revision=35342
This commit is contained in:
Stefan Ginsberg 2008-08-14 16:43:52 +00:00
parent c335a12872
commit 9f65ee2cec

View file

@ -28,12 +28,14 @@ VOID
FASTCALL FASTCALL
MiSyncThreadProcessViews(IN PKTHREAD NextThread) MiSyncThreadProcessViews(IN PKTHREAD NextThread)
{ {
PVOID Process = PsGetCurrentProcess();
PETHREAD Thread = CONTAINING_RECORD(NextThread, ETHREAD, Tcb);
/* Hack Sync because Mm is broken */ /* Hack Sync because Mm is broken */
MmUpdatePageDir(PsGetCurrentProcess(), MmUpdatePageDir(Process, Thread, sizeof(ETHREAD));
((PETHREAD)NextThread)->ThreadsProcess, MmUpdatePageDir(Process, Thread->ThreadsProcess, sizeof(EPROCESS));
sizeof(EPROCESS)); MmUpdatePageDir(Process,
MmUpdatePageDir(PsGetCurrentProcess(), (PVOID)Thread->Tcb.StackLimit,
(PVOID)((PETHREAD)NextThread)->Tcb.StackLimit,
NextThread->LargeStack ? NextThread->LargeStack ?
KERNEL_LARGE_STACK_SIZE : KERNEL_STACK_SIZE); KERNEL_LARGE_STACK_SIZE : KERNEL_STACK_SIZE);
} }