summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 7612a1e)
raw | patch | inline | side by side (parent: 7612a1e)
author | Paul Eggert <eggert@CS.UCLA.EDU> | |
Thu, 8 Jun 2006 21:54:13 +0000 (14:54 -0700) | ||
committer | Junio C Hamano <junkio@cox.net> | |
Fri, 9 Jun 2006 04:22:33 +0000 (21:22 -0700) |
When match_digit() guesses a four-digit string to tell if it is
a year or a timezone, it did not consider that some real-world
places have UTC offsets equal to +1400.
$ date; TZ=UTC0 date; TZ=Pacific/Kiritimati date
Wed Jun 7 23:25:42 PDT 2006
Thu Jun 8 06:25:42 UTC 2006
Thu Jun 8 20:25:42 LINT 2006
Signed-off-by: Paul Eggert <eggert@CS.UCLA.EDU>
Signed-off-by: Junio C Hamano <junkio@cox.net>
a year or a timezone, it did not consider that some real-world
places have UTC offsets equal to +1400.
$ date; TZ=UTC0 date; TZ=Pacific/Kiritimati date
Wed Jun 7 23:25:42 PDT 2006
Thu Jun 8 06:25:42 UTC 2006
Thu Jun 8 20:25:42 LINT 2006
Signed-off-by: Paul Eggert <eggert@CS.UCLA.EDU>
Signed-off-by: Junio C Hamano <junkio@cox.net>
date.c | patch | blob | history |
index 365dc3b14e47826dd7becf19a76e29bfaa6b2eb5..66be23ab21ef855ecbadeceae1dea2972efd4c2f 100644 (file)
--- a/date.c
+++ b/date.c
@@ -369,7 +369,7 @@ static int match_digit(const char *date, struct tm *tm, int *offset, int *tm_gmt
/* Four-digit year or a timezone? */
if (n == 4) {
- if (num <= 1200 && *offset == -1) {
+ if (num <= 1400 && *offset == -1) {
unsigned int minutes = num % 100;
unsigned int hours = num / 100;
*offset = hours*60 + minutes;