summaryrefslogtreecommitdiffstats
path: root/gnu/usr.bin/man
diff options
context:
space:
mode:
authorjkh <jkh@FreeBSD.org>1993-10-09 00:48:26 +0000
committerjkh <jkh@FreeBSD.org>1993-10-09 00:48:26 +0000
commite0d5784d0ed9ffc9276fa35b2e1dc87e884af2f2 (patch)
treef3eb30f698d7b0a5a8ecf236d3c4d26dd3b79fca /gnu/usr.bin/man
parent386f6d6a1c661b54936ebe549c9834d68cde6fb3 (diff)
downloadFreeBSD-src-e0d5784d0ed9ffc9276fa35b2e1dc87e884af2f2.zip
FreeBSD-src-e0d5784d0ed9ffc9276fa35b2e1dc87e884af2f2.tar.gz
Handle both signals and errors in child processes, rather than just signals
as before.
Diffstat (limited to 'gnu/usr.bin/man')
-rw-r--r--gnu/usr.bin/man/lib/util.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gnu/usr.bin/man/lib/util.c b/gnu/usr.bin/man/lib/util.c
index f462e3e..e8253a8 100644
--- a/gnu/usr.bin/man/lib/util.c
+++ b/gnu/usr.bin/man/lib/util.c
@@ -19,6 +19,7 @@
#include <ctype.h>
#include <sys/types.h>
#include <sys/stat.h>
+#include <sys/wait.h>
#ifdef STDC_HEADERS
#include <stdlib.h>
@@ -137,8 +138,12 @@ do_system_command (command)
else
status = system (command);
- if (status)
+ if (WIFSIGNALED(status))
return 0;
+ else if (WEXITSTATUS(status)) {
+ gripe_system_command (status);
+ return 0;
+ }
else
return 1;
}
OpenPOWER on IntegriCloud