diff options
author | wl <wl> | 2013-02-02 19:05:09 +0000 |
---|---|---|
committer | wl <wl> | 2013-02-02 19:05:09 +0000 |
commit | dae1d0e512d37d4b0a8c725691f6021bd5d56847 (patch) | |
tree | 65de54131fc6f5a6cd7f3ed169cf39f9859e7535 /src | |
parent | c9d85816d4319650c003e371f5438a29777a0ac6 (diff) | |
download | groff-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.cpp | 7 |
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); } |