diff options
author | Rich Felker <dalias@aerifal.cx> | 2011-09-28 22:07:58 -0400 |
---|---|---|
committer | Rich Felker <dalias@aerifal.cx> | 2011-09-28 22:07:58 -0400 |
commit | 5f814682b48c59f07568d349f979eed4cf306703 (patch) | |
tree | 3e57d7d65a8329d87ea41232f8689b5fd64efd7b | |
parent | de543b05c87d79a9313991810e9ee8ecdaad8f19 (diff) | |
download | musl-5f814682b48c59f07568d349f979eed4cf306703.tar.gz musl-5f814682b48c59f07568d349f979eed4cf306703.tar.xz musl-5f814682b48c59f07568d349f979eed4cf306703.zip |
don't crash on null strings in printf
passing null pointer for %s is UB but lots of broken programs do it anyway
-rw-r--r-- | src/stdio/vfprintf.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/stdio/vfprintf.c b/src/stdio/vfprintf.c index 4c990e5e..b5001ff2 100644 --- a/src/stdio/vfprintf.c +++ b/src/stdio/vfprintf.c @@ -584,7 +584,7 @@ static int printf_core(FILE *f, const char *fmt, va_list *ap, union arg *nl_arg, case 'm': if (1) a = strerror(errno); else case 's': - a = arg.p; + a = arg.p ? arg.p : "(null)"; z = memchr(a, 0, p); if (!z) z=a+p; else p=z-a; |