}
}
}
- Win32Thread->IsExiting = FALSE;
+ Win32Thread->TIF_flags &= ~TIF_INCLEANUP;
co_IntDestroyCaret(Win32Thread);
Win32Thread->ppi = PsGetCurrentProcessWin32Process();
pTeb = NtCurrentTeb();
DPRINT("Destroying W32 thread TID:%d at IRQ level: %lu\n", Thread->Cid.UniqueThread, KeGetCurrentIrql());
- Win32Thread->IsExiting = TRUE;
Win32Thread->TIF_flags |= TIF_INCLEANUP;
HOOK_DestroyThreadHooks(Thread);
UnregisterThreadHotKeys(Thread);
if (NULL != Win32Thread &&
Window->MessageQueue == Win32Thread->MessageQueue)
{
- if (Win32Thread->IsExiting)
+ if (Win32Thread->TIF_flags & TIF_INCLEANUP)
{
/* Never send messages to exiting threads */
RETURN( FALSE);