diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/stdio/vfprintf.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/stdio/vfprintf.c b/src/stdio/vfprintf.c index 15356f53..50fb55c1 100644 --- a/src/stdio/vfprintf.c +++ b/src/stdio/vfprintf.c @@ -559,7 +559,7 @@ static int printf_core(FILE *f, const char *fmt, va_list *ap, union arg *nl_arg, if (0) { case 'o': a = fmt_o(arg.i, z); - if ((fl&ALT_FORM) && p<z-a+1) prefix+=5, pl=1; + if ((fl&ALT_FORM) && p<z-a+1) p=z-a+1; } if (0) { case 'd': case 'i': pl=1; @@ -574,7 +574,7 @@ static int printf_core(FILE *f, const char *fmt, va_list *ap, union arg *nl_arg, a = fmt_u(arg.i, z); } if (xp && p<0) goto overflow; - if (p>=0) fl &= ~ZERO_PAD; + if (xp) fl &= ~ZERO_PAD; if (!arg.i && !p) { a=z; break; |