|
|
|
@@ -454,7 +454,8 @@ char *av_small_strptime(const char *p, const char *fmt, struct tm *dt) |
|
|
|
c = *fmt++; |
|
|
|
switch(c) { |
|
|
|
case 'H': |
|
|
|
val = date_get_num(&p, 0, 23, 2); |
|
|
|
case 'J': |
|
|
|
val = date_get_num(&p, 0, c == 'H' ? 23 : INT_MAX, 2); |
|
|
|
if (val == -1) |
|
|
|
return NULL; |
|
|
|
dt->tm_hour = val; |
|
|
|
@@ -581,7 +582,7 @@ int av_parse_time(int64_t *timeval, const char *timestr, int duration) |
|
|
|
++p; |
|
|
|
} |
|
|
|
/* parse timestr as HH:MM:SS */ |
|
|
|
q = av_small_strptime(p, time_fmt[0], &dt); |
|
|
|
q = av_small_strptime(p, "%J:%M:%S", &dt); |
|
|
|
if (!q) { |
|
|
|
/* parse timestr as S+ */ |
|
|
|
dt.tm_sec = strtol(p, (void *)&q, 10); |
|
|
|
|