chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
b86d44e
)
manager: before entering loop dispatch queued up SIGCHLDs
author
Lennart Poettering
<lennart@poettering.net>
Tue, 18 May 2010 02:16:33 +0000
(
04:16
+0200)
committer
Lennart Poettering
<lennart@poettering.net>
Tue, 18 May 2010 02:16:33 +0000
(
04:16
+0200)
src/manager.c
patch
|
blob
|
history
diff --git
a/src/manager.c
b/src/manager.c
index 688d9fa65b28e831217faee879cf4977a241006f..f6f205fac8aefc6383516b4530ee0cd7f7bd82fd 100644
(file)
--- a/
src/manager.c
+++ b/
src/manager.c
@@
-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;