Parcourir la source

fix processing of strptime %p format

string pointer was not advanced after matching.
Julien Ramseier il y a 8 ans
Parent
commit
834ef7aff5
1 fichiers modifiés avec 2 ajouts et 0 suppressions
  1. 2 0
      src/time/strptime.c

+ 2 - 0
src/time/strptime.c

@@ -94,6 +94,7 @@ char *strptime(const char *restrict s, const char *restrict f, struct tm *restri
 			len = strlen(ex);
 			if (!strncasecmp(s, ex, len)) {
 				tm->tm_hour %= 12;
+				s += len;
 				break;
 			}
 			ex = nl_langinfo(PM_STR);
@@ -101,6 +102,7 @@ char *strptime(const char *restrict s, const char *restrict f, struct tm *restri
 			if (!strncasecmp(s, ex, len)) {
 				tm->tm_hour %= 12;
 				tm->tm_hour += 12;
+				s += len;
 				break;
 			}
 			return 0;