diff options
author | Paul Smith <psmith@gnu.org> | 2014-10-20 05:54:56 +0000 |
---|---|---|
committer | Sam Thursfield <sam.thursfield@codethink.co.uk> | 2015-06-10 12:46:50 +0100 |
commit | 4978d7129e42340ab9efeb0cb9cae4ad0fa052d4 (patch) | |
tree | 26e5d54377f53d759529f7c454138864f6629051 /main.c | |
parent | 9de84c07c0648cde63bfcd2769b07faf86668e1a (diff) | |
download | make-tarball-baserock/make-4.1-ttyname-segfault-fix.tar.gz |
* main.c (main): [SV 43434] Handle NULL returns from ttyname().baserock/make-4.1-ttyname-segfault-fix
Diffstat (limited to 'main.c')
-rw-r--r-- | main.c | 15 |
1 files changed, 10 insertions, 5 deletions
@@ -1401,13 +1401,18 @@ main (int argc, char **argv, char **envp) #ifdef HAVE_ISATTY if (isatty (fileno (stdout))) if (! lookup_variable (STRING_SIZE_TUPLE ("MAKE_TERMOUT"))) - define_variable_cname ("MAKE_TERMOUT", TTYNAME (fileno (stdout)), - o_default, 0)->export = v_export; - + { + const char *tty = TTYNAME (fileno (stdout)); + define_variable_cname ("MAKE_TERMOUT", tty ? tty : DEFAULT_TTYNAME, + o_default, 0)->export = v_export; + } if (isatty (fileno (stderr))) if (! lookup_variable (STRING_SIZE_TUPLE ("MAKE_TERMERR"))) - define_variable_cname ("MAKE_TERMERR", TTYNAME (fileno (stderr)), - o_default, 0)->export = v_export; + { + const char *tty = TTYNAME (fileno (stderr)); + define_variable_cname ("MAKE_TERMERR", tty ? tty : DEFAULT_TTYNAME, + o_default, 0)->export = v_export; + } #endif /* Reset in case the switches changed our minds. */ |