about summary refs log tree commit diff
path: root/src/stdio
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 /src/stdio
parentde543b05c87d79a9313991810e9ee8ecdaad8f19 (diff)
downloadmusl-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
Diffstat (limited to 'src/stdio')
-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;