call waitpid until no more children to wait for (thanks Devin/dlab).

This commit is contained in:
simonb 2006-07-03 01:56:59 +00:00
parent 4c12086c1c
commit 51fa41554e
2 changed files with 6 additions and 1 deletions

View file

@ -1,5 +1,9 @@
(Format: Year/Month/Day)
Changes for 1.0rc2:
*06/07/03:
* call waitpid() on SIGCHLD until no more children (thanks Devin/dlab)
sf.net #1514843, #1447782 - fluxbox leaves zombies
fluxbox.cc
*06/07/02:
* Updated documentation (Mark)
*06/06/29:

View file

@ -1135,7 +1135,8 @@ void Fluxbox::handleSignal(int signum) {
switch (signum) {
case SIGCHLD: // we don't want the child process to kill us
waitpid(-1, 0, WNOHANG | WUNTRACED);
// more than one process may have terminated
while (waitpid(-1, 0, WNOHANG | WUNTRACED) > 0);
break;
case SIGHUP:
restart();