git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Fix nasty approxidate bug
@ 2006-01-05  3:33 Linus Torvalds
  0 siblings, 0 replies; only message in thread
From: Linus Torvalds @ 2006-01-05  3:33 UTC (permalink / raw)
  To: Junio C Hamano, Git Mailing List


Stupid me.

If approxidate ends up with a month that is ahead of the current month, it 
decrements the year to last year.

Which is correct, and means that "last december" does the right thing.

HOWEVER. It should only do so if the year is the same as the current year.

Without this fix, "5 days ago" ends up being in 2004, because it first 
decrements five days, getting us to December 2005 (correct), but then it 
also ends up decrementing the year once more to turn that December into 
"last year" (incorrect, since it already _was_ last year).

Duh. Pass me a donut.

Signed-off-by: Linus Torvalds <torvalds@osdl.org>
---
diff --git a/date.c b/date.c
index 3e11500..73037c7 100644
--- a/date.c
+++ b/date.c
@@ -640,7 +640,7 @@ unsigned long approxidate(const char *da
 	}
 	if (number > 0 && number < 32)
 		tm.tm_mday = number;
-	if (tm.tm_mon > now.tm_mon)
+	if (tm.tm_mon > now.tm_mon && tm.tm_year == now.tm_year)
 		tm.tm_year--;
 	return mktime(&tm);
 }

^ permalink raw reply related	[flat|nested] only message in thread

only message in thread, other threads:[~2006-01-05  3:34 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-01-05  3:33 Fix nasty approxidate bug Linus Torvalds

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).