From d2a8a1bc51b8620dce223a530a85e03272b3a473 Mon Sep 17 00:00:00 2001 From: Hartmut Birr Date: Sat, 2 Oct 2004 10:19:38 +0000 Subject: [PATCH] - Terminate the wait thread if the handle was from a console. svn path=/trunk/; revision=11149 --- reactos/lib/kernel32/synch/wait.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/reactos/lib/kernel32/synch/wait.c b/reactos/lib/kernel32/synch/wait.c index 061664111c3..8fc39175f2e 100644 --- a/reactos/lib/kernel32/synch/wait.c +++ b/reactos/lib/kernel32/synch/wait.c @@ -1,4 +1,4 @@ -/* $Id: wait.c,v 1.29 2004/07/18 23:52:31 navaraf Exp $ +/* $Id: wait.c,v 1.30 2004/10/02 10:19:38 hbirr Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS system libraries @@ -105,6 +105,7 @@ WaitForSingleObjectEx(HANDLE hHandle, SetLastErrorByStatus (Status); return FALSE; } + CloseWaitHandle = TRUE; } } @@ -123,7 +124,10 @@ WaitForSingleObjectEx(HANDLE hHandle, TimePtr); if (CloseWaitHandle) + { + TerminateThread(hHandle, 0); NtClose(hHandle); + } if (HIWORD(Status)) { @@ -245,7 +249,10 @@ WaitForMultipleObjectsEx(DWORD nCount, for (i = 0; i < nCount; i++) if (FreeThisHandle[i]) + { + TerminateThread(HandleBuffer[i], 0); NtClose(HandleBuffer[i]); + } RtlFreeHeap(RtlGetProcessHeap(), 0, HandleBuffer);