Parcourir la source

reorder strftime to eliminate the incorrect indention level

this change is in preparation for possibly adding support for the
field width and padding specifiers added in POSIX 2008.
Rich Felker il y a 11 ans
Parent
commit
d53b1f820c
1 fichiers modifiés avec 5 ajouts et 5 suppressions
  1. 5 5
      src/time/strftime.c

+ 5 - 5
src/time/strftime.c

@@ -51,7 +51,11 @@ size_t __strftime_l(char *restrict s, size_t n, const char *restrict f, const st
 	const char *fmt;
 	size_t l;
 	for (l=0; *f && l<n; f++) {
-		if (*f == '%') {
+		if (*f != '%') {
+literal:
+			s[l++] = *f;
+			continue;
+		}
 do_fmt:
 		switch (*++f) {
 		case '%':
@@ -192,10 +196,6 @@ do_fmt:
 		default:
 			return 0;
 		}
-		}
-literal:
-		s[l++] = *f;
-		continue;
 number:
 		l += snprintf(s+l, n-l, fmt, val);
 		continue;