manager: before entering loop dispatch queued up SIGCHLDs

This commit is contained in:
Lennart Poettering 2010-05-18 04:16:33 +02:00
parent b86d44e5ab
commit a4312405f2

View file

@ -1939,6 +1939,11 @@ int manager_loop(Manager *m) {
assert(m);
m->exit_code = MANAGER_RUNNING;
/* There might still be some zombies hanging around from
* before we were exec()'ed. Leat's reap them */
if ((r = manager_dispatch_sigchld(m)) < 0)
return r;
while (m->exit_code == MANAGER_RUNNING) {
struct epoll_event event;
int n;