Squid-2.2.DEVEL3: Common log format dates, and end of year Common log format dates had a bug which could cause time zone indication to be way off (about a year off) when close to the final hours of the year. Index: squid/lib/rfc1123.c diff -u squid/lib/rfc1123.c:1.1.1.15 squid/lib/rfc1123.c:1.1.1.15.2.1 --- squid/lib/rfc1123.c:1.1.1.15 Sun Feb 14 23:29:43 1999 +++ squid/lib/rfc1123.c Thu Apr 8 05:56:57 1999 @@ -237,15 +237,16 @@ gmt_yday = gmt->tm_yday; lt = localtime(t); - day_offset = lt->tm_yday - gmt_yday; - min_offset = day_offset * 1440 + (lt->tm_hour - gmt_hour) * 60 - + (lt->tm_min - gmt_min); + day_offset = lt->tm_yday - gmt_yday; /* wrap round on end of year */ if (day_offset > 1) day_offset = -1; else if (day_offset < -1) day_offset = 1; + + min_offset = day_offset * 1440 + (lt->tm_hour - gmt_hour) * 60 + + (lt->tm_min - gmt_min); len = strftime(buf, 127 - 5, "%d/%b/%Y:%H:%M:%S ", lt); snprintf(buf + len, 128 - len, "%+03d%02d",