date.c: fix parsing of dates in mm/dd/yy format
We looked at the year one character too early, and we didn't accept a two-character year date after 2000.
This commit is contained in:
parent
eaa8512923
commit
a90588821a
4
date.c
4
date.c
@ -203,9 +203,11 @@ static int match_digit(char *date, struct tm *tm, int *offset)
|
||||
tm->tm_mon = num - 1;
|
||||
tm->tm_mday = num2;
|
||||
if (*end == c && isdigit(end[1])) {
|
||||
num3 = strtoul(end, &end, 10);
|
||||
num3 = strtoul(end+1, &end, 10);
|
||||
if (num3 > 1900)
|
||||
num3 -= 1900;
|
||||
else if (num3 < 38)
|
||||
num3 += 100;
|
||||
tm->tm_year = num3;
|
||||
}
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user