Do not merge!
Signed-off-by: Felipe Contreras <redacted>
---
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