diff options
author | Jim Meyering <meyering@redhat.com> | 2012-01-29 12:50:32 +0100 |
---|---|---|
committer | Jim Meyering <meyering@redhat.com> | 2012-01-29 21:19:20 +0100 |
commit | acb5895680611f8beb497b41694d9686f2932c50 (patch) | |
tree | 451f44bf67807e1354be6c8b6476c21a9f89c2ea /bootstrap.conf | |
parent | 888b6ddfe44ee87ddc6bd77b960dde820c53f105 (diff) | |
download | bison-acb5895680611f8beb497b41694d9686f2932c50.tar.gz |
do not ignore errors like ENOSPC,EIO when writing to stdout
Standard output was never explicitly closed, so we could not
detect failure. Thus, bison would ignore the errors of writing
to a full file system and getting an I/O error on write, but only
for standard output, e.g., for --print-localedir, --print-datadir,
--help and some verbose output.
Now, "bison --print-datadir > /dev/full" reports the write failure:
bison: write error: No space left on device
Before, it would exit 0 with no diagnostic, implying success.
This is not an issue for "--output=-" or the other FILE-accepting
command-line options, because unlike most other GNU programs,
an output file argument of "-" is treated as the literal "./-",
rather than standard output.
* bootstrap.conf (gnulib_modules): Add closeout.
* src/main.c: Include "closeout.h".
Use atexit to ensure we close stdout.
* .gitignore: Ignore new files pulled in via gnulib-tool.
Diffstat (limited to 'bootstrap.conf')
-rw-r--r-- | bootstrap.conf | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/bootstrap.conf b/bootstrap.conf index 599b778f..757111ce 100644 --- a/bootstrap.conf +++ b/bootstrap.conf @@ -17,7 +17,7 @@ # gnulib modules used by this package. gnulib_modules=' - announce-gen argmatch assert calloc-posix close config-h c-strcase + announce-gen argmatch assert calloc-posix close closeout config-h c-strcase configmake dirname error extensions fdl fopen-safer gendocs getopt-gnu gettext git-version-gen gitlog-to-changelog gpl-3.0 hash inttypes isnan javacomp-script |