summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRich Felker <dalias@aerifal.cx>2011-09-28 22:07:58 -0400
committerRich Felker <dalias@aerifal.cx>2011-09-28 22:07:58 -0400
commit5f814682b48c59f07568d349f979eed4cf306703 (patch)
tree3e57d7d65a8329d87ea41232f8689b5fd64efd7b
parentde543b05c87d79a9313991810e9ee8ecdaad8f19 (diff)
downloadmusl-5f814682b48c59f07568d349f979eed4cf306703.tar.gz
musl-5f814682b48c59f07568d349f979eed4cf306703.tar.bz2
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.c2
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;