diff options
author | Eric Blake <ebb9@byu.net> | 2009-07-20 06:54:18 -0600 |
---|---|---|
committer | Eric Blake <ebb9@byu.net> | 2009-07-20 07:14:21 -0600 |
commit | af75eb36c890595b686532dc35cf090c4879038f (patch) | |
tree | 77704aae58de57d7a888505b2b70063bb15fc61d | |
parent | 5fa9c079fbe226113280ac86401b432d9c0e7981 (diff) | |
download | m4-af75eb36c890595b686532dc35cf090c4879038f.tar.gz |
Avoid cygwin 1.7 crash with closed stdout.
* gnulib: Update.
* doc/m4.texinfo (Command line files): Add test; regression
introduced 2008-07-17.
* NEWS: Document the change.
Signed-off-by: Eric Blake <ebb9@byu.net>
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | NEWS | 3 | ||||
-rw-r--r-- | doc/m4.texinfo | 13 | ||||
m--------- | gnulib | 0 |
4 files changed, 22 insertions, 0 deletions
@@ -1,5 +1,11 @@ 2009-07-20 Eric Blake <ebb9@byu.net> + Avoid cygwin 1.7 crash with closed stdout. + * gnulib: Update. + * doc/m4.texinfo (Command line files): Add test; regression + introduced 2008-07-17. + * NEWS: Document the change. + A status of 127 does not always imply esyscmd failure. * src/builtin.c (m4_esyscmd): Silence gnulib message; regression introduced 2009-03-05. @@ -5,6 +5,9 @@ Software Foundation, Inc. * Noteworthy changes in Version 1.4.14 (2009-??-??) [stable] Released by Eric Blake, based on git version 1.4.13.* +** Fix regression introduced in 1.4.12 where executing with stdout closed + could crash m4 on exit on some platforms. + ** Fix regression introduced in 1.4.13 in the `esyscmd' builtin, where a child status of 127 made m4 print a spurious message to stderr. diff --git a/doc/m4.texinfo b/doc/m4.texinfo index eb76109e..6c03ce70 100644 --- a/doc/m4.texinfo +++ b/doc/m4.texinfo @@ -960,6 +960,19 @@ options. @example @error{}m4: cannot open `Makefile/': Not a directory @end example + +@comment Test that closed stderr does not cause a crash. + +@example +ifdef(`__unix__', , + `errprint(` skipping: syscmd does not have unix semantics +')m4exit(`77')')dnl +changequote(`[', `]')dnl +syscmd([echo | ']__program__[' >&-])dnl +@error{}m4: write error: Bad file descriptor +sysval +@result{}1 +@end example @end ignore @node Syntax diff --git a/gnulib b/gnulib -Subproject e3e47d1710f6154c54b65c5d9dd5d56516a893d +Subproject d19ab0454ad81cd702f17864f082aefcbea6687 |