aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorsimonb <simonb>2006-07-03 01:56:59 (GMT)
committersimonb <simonb>2006-07-03 01:56:59 (GMT)
commit51fa41554e87a50d1ded65382a645c9c47f2194f (patch)
tree90b3d52d1eb53f9350ca7d34b8d05de3c179822f /src
parent4c12086c1c126347f92c247901fb0ab3231d237c (diff)
downloadfluxbox_pavel-51fa41554e87a50d1ded65382a645c9c47f2194f.zip
fluxbox_pavel-51fa41554e87a50d1ded65382a645c9c47f2194f.tar.bz2
call waitpid until no more children to wait for (thanks Devin/dlab).
Diffstat (limited to 'src')
-rw-r--r--src/fluxbox.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/fluxbox.cc b/src/fluxbox.cc
index 1cdc647..4e4187a 100644
--- a/src/fluxbox.cc
+++ b/src/fluxbox.cc
@@ -1135,7 +1135,8 @@ void Fluxbox::handleSignal(int signum) {
1135 1135
1136 switch (signum) { 1136 switch (signum) {
1137 case SIGCHLD: // we don't want the child process to kill us 1137 case SIGCHLD: // we don't want the child process to kill us
1138 waitpid(-1, 0, WNOHANG | WUNTRACED); 1138 // more than one process may have terminated
1139 while (waitpid(-1, 0, WNOHANG | WUNTRACED) > 0);
1139 break; 1140 break;
1140 case SIGHUP: 1141 case SIGHUP:
1141 restart(); 1142 restart();