[Posted by George V. Reilly]
Run the following code in IE6 or Firefox 2.0.0.12:
The time is <span id='now'></span>.
<script type="text/javascript">
document.getElementById('now').innerHTML = new Date();
</script>
If you're in the US or Canada, you should see that the script claims that the time is an hour earlier than it actually is.
The picture here shows a piece of the Cozi web client running under Firefox 2 (wrong) and IE7 (correct).
The problem is due to the new Daylight Savings Time rules which went into effect last year in the United States. Formerly, DST began on the first Sunday in April; now it begins on the second Sunday in March.
Programs compiled with Visual Studio 2005 will not honor the new DST rules, not even if you've installed SP1. You have to install an additional hotfix and rebuild before your code will handle the new rules. (I confirmed this by building Vim without and with the hotfix last night.) This only seems to be a problem in C/C++ code. The .NET runtime correctly handles the new DST rules.
I've reported this problem in Bugzilla as JavaScript Date() off by an hour after DST change. As you can see from the bug report, if I roll the system clock back to before the new DST cutover or forward past the old cutover, the JavaScript date is once again correct.
Update 2008/03/14: Mea culpa.
This is not a widespread problem.
It is caused by the presence of set TZ=PST8PDT
in my C:\AutoExec.bat.
Per KB932590, the existence of the TZ environment variable
will cause the CRT to use the old DST rules.
(I can't remember why I set TZ several years ago.
It's part of the accumulated mess of files that
I bring everywhere with me.)





My Cozi has the wrong date and I dont believe it is from daylight savings time because it is June! Will someone please tell me how to change the time?
Posted by: Martha | June 26, 2008 at 09:50 PM