summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorroot <root>2007-11-23 10:36:30 +0000
committerroot <root>2007-11-23 10:36:30 +0000
commit3aac629c70531882ca503ed6ad0519f89bca1334 (patch)
tree23550d5d66f3b9fbd41997dfa05e5aff14eb0cca
parente71f3fb02d5da3553fc8e80eed84394b962b118f (diff)
*** empty log message ***
-rw-r--r--ev.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ev.c b/ev.c
index d12e472..716c3d1 100644
--- a/ev.c
+++ b/ev.c
@@ -729,10 +729,11 @@ childcb (EV_P_ struct ev_signal *sw, int revents)
if (0 < (pid = waitpid (-1, &status, WNOHANG | WUNTRACED | WCONTINUED)))
{
/* make sure we are called again until all childs have been reaped */
+ /* we need to do it this way so that the callback gets called before we continue */
ev_feed_event (EV_A_ (W)sw, EV_SIGNAL);
child_reap (EV_A_ sw, pid, pid, status);
- child_reap (EV_A_ sw, 0, pid, status); /* this might trigger a watcher twice, but event catches that */
+ child_reap (EV_A_ sw, 0, pid, status); /* this might trigger a watcher twice, but feed_event catches that */
}
}