summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorwl <wl>2013-02-02 19:05:09 +0000
committerwl <wl>2013-02-02 19:05:09 +0000
commitdae1d0e512d37d4b0a8c725691f6021bd5d56847 (patch)
tree65de54131fc6f5a6cd7f3ed169cf39f9859e7535 /src
parentc9d85816d4319650c003e371f5438a29777a0ac6 (diff)
downloadgroff-dae1d0e512d37d4b0a8c725691f6021bd5d56847.tar.gz
[grohtml] Don't ignore return value of `dup'.
* src/preproc/html/pushback.cpp (pushBackBuffer::pushBackBuffer, pushBackBuffer::~pushBackBuffer): Abort if `dup' fails.
Diffstat (limited to 'src')
-rw-r--r--src/preproc/html/pushback.cpp7
1 files changed, 6 insertions, 1 deletions
diff --git a/src/preproc/html/pushback.cpp b/src/preproc/html/pushback.cpp
index 60ca9ff7..562669e7 100644
--- a/src/preproc/html/pushback.cpp
+++ b/src/preproc/html/pushback.cpp
@@ -71,6 +71,9 @@ pushBackBuffer::pushBackBuffer (char *filename)
lineNo = 1;
if (strcmp(filename, "") != 0) {
stdIn = dup(0);
+ if (stdIn<0) {
+ sys_fatal("dup stdin");
+ }
close(0);
if (open(filename, O_RDONLY) != 0) {
sys_fatal("when trying to open file");
@@ -87,7 +90,9 @@ pushBackBuffer::~pushBackBuffer ()
}
close(0);
/* restore stdin in file descriptor 0 */
- dup(stdIn);
+ if (dup(stdIn)<0) {
+ sys_fatal("restore stdin");
+ }
close(stdIn);
}