From: Felipe Contreras Date: Mon, 01 Apr 2013 21:46:44 GMT Subject: [PATCH 4/4] tmp: run-command: code to exercise check_command Message-ID: <1364852804-31875-5-git-send-email-felipe.contreras@gmail.com> In-Reply-To: <1364852804-31875-1-git-send-email-felipe.contreras@gmail.com> Do not merge! Signed-off-by: Felipe Contreras --- run-command.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/run-command.c b/run-command.c index 16833df..6f20d5f 100644 --- a/run-command.c +++ b/run-command.c @@ -234,6 +234,7 @@ static pid_t persistent_waitpid(struct child_process *cmd, pid_t pid, int *stat_ return errno ? -1 : pid; } else { pid_t waiting; + die("not supposed to happen"); while ((waiting = waitpid(pid, stat_loc, 0)) < 0 && errno == EINTR) ; /* nothing */ return waiting; @@ -246,6 +247,11 @@ static int wait_or_whine(struct child_process *cmd, pid_t pid, const char *argv0 pid_t waiting; int failed_errno = 0; + do { + if (!check_command(cmd)) + break; + } while(1); + waiting = persistent_waitpid(cmd, pid, &status); if (waiting < 0) { -- 1.8.2