aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorross <ross@NetBSD.org>2003-02-10 09:10:01 +0000
committerross <ross@NetBSD.org>2003-02-10 09:10:01 +0000
commitf23c77978f8651021f11754e365d95d60ef7d945 (patch)
tree2a1ad28353b2511208e2e87d19b9bd7175b00568
parentd70520c4511f6512d0d0ae129321a2a4600e4ee2 (diff)
downloadbsd-progress-f23c77978f8651021f11754e365d95d60ef7d945.tar.gz
bsd-progress-f23c77978f8651021f11754e365d95d60ef7d945.tar.zst
bsd-progress-f23c77978f8651021f11754e365d95d60ef7d945.zip
Fix a race that can abort a sysinst run.
Closes bin/20275, thank you Takao Shinohara: good analysis. This program appeared less than 3 weeks ago and it has already been pulled up to 1.6.1? At the last minute? And with serious bugs? ISTM that the release branch isn't supposed to work that way. It isn't stable, it had 4 patches in 2 days, and has averaged a patch every 4 days during its short lifetime.
-rw-r--r--progress.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/progress.c b/progress.c
index f5422de..c9bd42b 100644
--- a/progress.c
+++ b/progress.c
@@ -1,4 +1,4 @@
-/* $NetBSD: progress.c,v 1.5 2003/01/22 10:44:17 agc Exp $ */
+/* $NetBSD: progress.c,v 1.6 2003/02/10 09:10:01 ross Exp $ */
/*-
* Copyright (c) 2003 The NetBSD Foundation, Inc.
@@ -34,7 +34,7 @@
#include <sys/cdefs.h>
#ifndef lint
-__RCSID("$NetBSD: progress.c,v 1.5 2003/01/22 10:44:17 agc Exp $");
+__RCSID("$NetBSD: progress.c,v 1.6 2003/02/10 09:10:01 ross Exp $");
#endif /* not lint */
#include <sys/types.h>
@@ -211,7 +211,8 @@ main(int argc, char *argv[])
(unsigned) nr);
close(outpipe[1]);
- wait(&waitstat);
+ while(wait(&waitstat) != -1)
+ continue;
progressmeter(1);
return 0;