diff options
author | Matt Johnston <matt@ucc.asn.au> | 2014-07-28 23:23:49 +0800 |
---|---|---|
committer | Matt Johnston <matt@ucc.asn.au> | 2014-07-28 23:23:49 +0800 |
commit | 0e7409c7ff6fc760018fce3d5e8b72247bf782b5 (patch) | |
tree | 766b9e2aa6a48f35eaafe0127bb344af66b95462 /svr-chansession.c | |
parent | 393ca2a290b70c715cd432309304771e075e2418 (diff) |
Make sure the check_close() handler runs when a server child process exits
Diffstat (limited to 'svr-chansession.c')
-rw-r--r-- | svr-chansession.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/svr-chansession.c b/svr-chansession.c index 4b45294..2a99362 100644 --- a/svr-chansession.c +++ b/svr-chansession.c @@ -89,6 +89,9 @@ static void sesssigchild_handler(int UNUSED(dummy)) { const int saved_errno = errno; + /* Make channel handling code look for closed channels */ + ses.channel_signal_pending = 1; + TRACE(("enter sigchld handler")) while ((pid = waitpid(-1, &status, WNOHANG)) > 0) { TRACE(("sigchld handler: pid %d", pid)) |