diff options
author | jkh <jkh@FreeBSD.org> | 1993-10-09 00:48:26 +0000 |
---|---|---|
committer | jkh <jkh@FreeBSD.org> | 1993-10-09 00:48:26 +0000 |
commit | e0d5784d0ed9ffc9276fa35b2e1dc87e884af2f2 (patch) | |
tree | f3eb30f698d7b0a5a8ecf236d3c4d26dd3b79fca /gnu/usr.bin/man | |
parent | 386f6d6a1c661b54936ebe549c9834d68cde6fb3 (diff) | |
download | FreeBSD-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.c | 7 |
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; } |