From a017b5157470ddde480d17812ad78ff6247b643d Mon Sep 17 00:00:00 2001 From: Jason Rumney Date: Sun, 2 Sep 2007 17:01:02 +0000 Subject: [PATCH] (delete_child): Don't terminate threads of zombies. --- src/w32proc.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/w32proc.c b/src/w32proc.c index adf5152f267..c21d589c525 100644 --- a/src/w32proc.c +++ b/src/w32proc.c @@ -216,12 +216,18 @@ delete_child (child_process *cp) /* let the thread exit cleanly if possible */ cp->status = STATUS_READ_ERROR; SetEvent (cp->char_consumed); +#if 0 + /* We used to forceably terminate the thread here, but it + is normally unnecessary, and in abnormal cases, the worst that + will happen is we have an extra idle thread hanging around + waiting for the zombie process. */ if (WaitForSingleObject (cp->thrd, 1000) != WAIT_OBJECT_0) { DebPrint (("delete_child.WaitForSingleObject (thread) failed " "with %lu for fd %ld\n", GetLastError (), cp->fd)); TerminateThread (cp->thrd, 0); } +#endif } CloseHandle (cp->thrd); cp->thrd = NULL; -- 2.39.2