Allow deleted processes to be reaped by SIGCHLD handler on MS-Windows.
authorEli Zaretskii <eliz@gnu.org>
Fri, 15 Feb 2013 09:41:31 +0000 (11:41 +0200)
committerEli Zaretskii <eliz@gnu.org>
Fri, 15 Feb 2013 09:41:31 +0000 (11:41 +0200)
commitef862e206a28f6618048c8b28413fa8f9c135c61
tree268021369bcc27a23f840634815215bd6d0d6def
parentbcf7fe2aeff7e3aacbfae08ca6001f7615a06709
Allow deleted processes to be reaped by SIGCHLD handler on MS-Windows.

 src/w32proc.c (new_child): Free up to 2 slots of dead processes at a
 time.  Improve diagnostics in DebPrint.
 (reader_thread): If cp->char_avail is NULL, set the FILE_AT_EOF
 flag, so that sys_select could have a chance of noticing that this
 process is dead, and call a SIGCHLD handler for it.  Improve
 diagnostics in DebPrint.
 (reap_subprocess): Reset the FILE_AT_EOF flag set by
 reader_thread.
 (sys_select): Watch a process whose procinfo.hProcess is non-NULL
 even if its char_avail is NULL.  Allows to reap subprocesses that
 were forcibly deleted by delete-process.  (Bug#13546)
src/ChangeLog
src/w32proc.c