Преглед на файлове

add printing of null %s arguments as "(null)" in wide printf

this is undefined, but supported in our implementation of the normal
printf, so for consistency the wide variant should support it too.
Rich Felker преди 10 години
родител
ревизия
f8f565df46
променени са 1 файла, в които са добавени 1 реда и са изтрити 0 реда
  1. 1 0
      src/stdio/vfwprintf.c

+ 1 - 0
src/stdio/vfwprintf.c

@@ -296,6 +296,7 @@ static int wprintf_core(FILE *f, const wchar_t *fmt, va_list *ap, union arg *nl_
 		case 'm':
 			arg.p = strerror(errno);
 		case 's':
+			if (!arg.p) arg.p = "(null)";
 			bs = arg.p;
 			if (p<0) p = INT_MAX;
 			for (i=l=0; l<p && (i=mbtowc(&wc, bs, MB_LEN_MAX))>0; bs+=i, l++);