diff --git a/src/system/libroot/posix/musl/time/strftime.c b/src/system/libroot/posix/musl/time/strftime.c index 7f3987bcda..3fe2e1a36f 100644 --- a/src/system/libroot/posix/musl/time/strftime.c +++ b/src/system/libroot/posix/musl/time/strftime.c @@ -3,6 +3,7 @@ #include #include #include +#include #include #include #include "locale_impl.h" @@ -235,7 +236,7 @@ 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 = strtoul(f, &p, 10); + width = isdigit(*f) ? strtoul(f, &p, 10) : 0; if (*p == 'C' || *p == 'F' || *p == 'G' || *p == 'Y') { if (!width && p!=f) width = 1; } else {