| Index: src/date.js
 | 
| ===================================================================
 | 
| --- src/date.js	(revision 4331)
 | 
| +++ src/date.js	(working copy)
 | 
| @@ -588,6 +588,20 @@
 | 
|  
 | 
|  
 | 
|  function LocalTimezoneString(time) {
 | 
| +  var old_timezone = timezone_cache_timezone;
 | 
| +  var timezone = LocalTimezone(time);
 | 
| +  if (old_timezone && timezone != old_timezone) {
 | 
| +    // If the timezone string has changed from the one that we cached,
 | 
| +    // the local time offset may now be wrong. So we need to update it
 | 
| +    // and try again.
 | 
| +    local_time_offset = %DateLocalTimeOffset();
 | 
| +    // We also need to invalidate the DST cache as the new timezone may have
 | 
| +    // different DST times.
 | 
| +    var dst_cache = DST_offset_cache;
 | 
| +    dst_cache.start = 0;
 | 
| +    dst_cache.end = -1;
 | 
| +  }
 | 
| +
 | 
|    var timezoneOffset =
 | 
|        (DaylightSavingsOffset(time) + local_time_offset) / msPerMinute;
 | 
|    var sign = (timezoneOffset >= 0) ? 1 : -1;
 | 
| @@ -595,7 +609,7 @@
 | 
|    var min   = FLOOR((sign * timezoneOffset)%60);
 | 
|    var gmt = ' GMT' + ((sign == 1) ? '+' : '-') +
 | 
|        TwoDigitString(hours) + TwoDigitString(min);
 | 
| -  return gmt + ' (' +  LocalTimezone(time) + ')';
 | 
| +  return gmt + ' (' +  timezone + ')';
 | 
|  }
 | 
|  
 | 
|  
 | 
| 
 |