summaryrefslogtreecommitdiff
path: root/contrib/cvs/diff/util.c
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>2004-04-15 01:01:56 +0000
committerPeter Wemm <peter@FreeBSD.org>2004-04-15 01:01:56 +0000
commit10bfecb8b52fe1781d1b496d2b47fff0e15c0806 (patch)
treefd220ac1ddaebaa4a730f86d6f727fb639279056 /contrib/cvs/diff/util.c
parentc8ae5f056296ca06d45a165f9c8588a777b19a89 (diff)
Notes
Diffstat (limited to 'contrib/cvs/diff/util.c')
-rw-r--r--contrib/cvs/diff/util.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/contrib/cvs/diff/util.c b/contrib/cvs/diff/util.c
index ff9cceb89909e..744cf519492a9 100644
--- a/contrib/cvs/diff/util.c
+++ b/contrib/cvs/diff/util.c
@@ -300,7 +300,7 @@ finish_output ()
if (paginate_flag && outfile != 0 && outfile != stdout)
{
#ifdef PR_PROGRAM
- int wstatus;
+ int wstatus, w;
if (ferror (outfile))
fatal ("write error");
# if ! HAVE_FORK
@@ -308,7 +308,9 @@ finish_output ()
# else /* HAVE_FORK */
if (fclose (outfile) != 0)
pfatal_with_name ("write error");
- if (waitpid (pr_pid, &wstatus, 0) < 0)
+ while ((w = waitpid (pr_pid, &wstatus, 0)) < 0 && errno == EINTR)
+ ;
+ if (w < 0)
pfatal_with_name ("waitpid");
# endif /* HAVE_FORK */
if (wstatus != 0)