From 98464be5922242446e7edf373c98efdf00b6e868 Mon Sep 17 00:00:00 2001 From: Jaroslav Kysela Date: Thu, 23 Apr 2015 14:47:16 +0200 Subject: [PATCH] spawn: fix spawn_reaper - handle errors --- src/spawn.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/spawn.c b/src/spawn.c index 7c2b47100..51ebd997a 100644 --- a/src/spawn.c +++ b/src/spawn.c @@ -283,7 +283,15 @@ spawn_reap(pid_t wpid, char *stxt, size_t stxtlen) static void spawn_reaper(void) { - while (spawn_reap(-1, NULL, 0) != -EAGAIN) ; + int r; + + do { + r = spawn_reap(-1, NULL, 0); + if (r == -EAGAIN) + continue; + if (r < 0) + break; + } while (1); } /** -- 2.47.3