aboutsummaryrefslogtreecommitdiff
path: root/archival
diff options
context:
space:
mode:
Diffstat (limited to 'archival')
-rw-r--r--archival/tar.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/archival/tar.c b/archival/tar.c
index 5b19093e8..64975c428 100644
--- a/archival/tar.c
+++ b/archival/tar.c
@@ -610,7 +610,7 @@ static int writeTarFile(const int tar_fd, const int verboseFlag,
610 610
611 if (gzipPid) { 611 if (gzipPid) {
612 int status; 612 int status;
613 if (waitpid(gzipPid, &status, 0) == -1) 613 if (safe_waitpid(gzipPid, &status, 0) == -1)
614 bb_perror_msg("waitpid"); 614 bb_perror_msg("waitpid");
615 else if (!WIFEXITED(status) || WEXITSTATUS(status)) 615 else if (!WIFEXITED(status) || WEXITSTATUS(status))
616 /* gzip was killed or has exited with nonzero! */ 616 /* gzip was killed or has exited with nonzero! */
@@ -688,7 +688,7 @@ static void handle_SIGCHLD(int status)
688 /* Actually, 'status' is a signo. We reuse it for other needs */ 688 /* Actually, 'status' is a signo. We reuse it for other needs */
689 689
690 /* Wait for any child without blocking */ 690 /* Wait for any child without blocking */
691 if (waitpid(-1, &status, WNOHANG) < 0) 691 if (wait_any_nohang(&status) < 0)
692 /* wait failed?! I'm confused... */ 692 /* wait failed?! I'm confused... */
693 return; 693 return;
694 694