diff options
-rw-r--r-- | src/time/strftime.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/time/strftime.c b/src/time/strftime.c index ef590903..c40246db 100644 --- a/src/time/strftime.c +++ b/src/time/strftime.c @@ -234,7 +234,12 @@ size_t __strftime_l(char *restrict s, size_t n, const char *restrict f, const st pad = 0; if (*f == '-' || *f == '_' || *f == '0') pad = *f++; if ((plus = (*f == '+'))) f++; - width = isdigit(*f) ? strtoul(f, &p, 10) : 0; + if (isdigit(*f)) { + width = strtoul(f, &p, 10); + } else { + width = 0; + p = (void *)f; + } if (*p == 'C' || *p == 'F' || *p == 'G' || *p == 'Y') { if (!width && p!=f) width = 1; } else { |