changeset 9235:8e66ca02b6f9 HEAD

utc_offset() was broken with year's first/last day if struct tm.tm_gmtoff didn't exist.
author Timo Sirainen <tss@iki.fi>
date Tue, 21 Jul 2009 15:18:49 -0400
parents ae3e0ff64c94
children a878a0897eb9
files src/lib/utc-offset.c
diffstat 1 files changed, 4 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/lib/utc-offset.c	Tue Jul 21 15:01:05 2009 -0400
+++ b/src/lib/utc-offset.c	Tue Jul 21 15:18:49 2009 -0400
@@ -19,9 +19,11 @@
 	gtm = *tm;
 
 	/* max offset of 24 hours */
-	if (ltm.tm_yday < gtm.tm_yday)
+	if ((ltm.tm_yday < gtm.tm_yday && ltm.tm_year == gtm.tm_year) ||
+	    ltm.tm_year < gtm.tm_year)
 		offset = -24 * 60;
-	else if (ltm.tm_yday > gtm.tm_yday)
+	else if ((ltm.tm_yday > gtm.tm_yday && ltm.tm_year == gtm.tm_year) ||
+		 ltm.tm_year > gtm.tm_year)
 		offset = 24 * 60;
 	else
 		offset = 0;