From e6e87516f569c2344f760287aec66f70da856c6d Mon Sep 17 00:00:00 2001 From: Mike Gorchak Date: Mon, 25 Feb 2013 23:51:16 +0200 Subject: date.c: fix unsigned time_t comparison tm_to_time_t() returns (time_t)-1 when it sees an error. On platforms with unsigned time_t, this value will be larger than any valid timestamp and will break the "Is this older than 10 days in the future?" check. Signed-off-by: Mike Gorchak Signed-off-by: Junio C Hamano --- date.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'date.c') diff --git a/date.c b/date.c index 57331ed406..1ac28e5e7b 100644 --- a/date.c +++ b/date.c @@ -383,7 +383,7 @@ static int is_date(int year, int month, int day, struct tm *now_tm, time_t now, * sense to specify timestamp way into the future. Make * sure it is not later than ten days from now... */ - if (now + 10*24*3600 < specified) + if ((specified != -1) && (now + 10*24*3600 < specified)) return 0; tm->tm_mon = r->tm_mon; tm->tm_mday = r->tm_mday; -- cgit v1.2.3