From: Jason Rumney Date: Sun, 2 Sep 2007 17:01:02 +0000 (+0000) Subject: (delete_child): Don't terminate threads of zombies. X-Git-Tag: emacs-pretest-22.1.90~863 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=a017b5157470ddde480d17812ad78ff6247b643d;p=emacs.git (delete_child): Don't terminate threads of zombies. --- 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;