about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--src/time/strftime.c7
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 {