mirror of
git://sourceware.org/git/glibc.git
synced 2025-04-06 14:10:30 +08:00
If time to switch to DST is later in the year switch back in the next
year.
This commit is contained in:
parent
079d719cfc
commit
16d2c6a949
@ -548,6 +548,13 @@ tz_compute (timer, tm)
|
||||
if (! compute_change (&tz_rules[0], 1900 + tm->tm_year) ||
|
||||
! compute_change (&tz_rules[1], 1900 + tm->tm_year))
|
||||
return 0;
|
||||
/* We have to distinguish between northern and southern hemisphere.
|
||||
For the later the daylight saving time ends in the next year.
|
||||
It is easier to detect this after first computing the time for the
|
||||
wrong year since now we simply can compare the times to switch. */
|
||||
if (tz_rules[0].change > tz_rules[1].change
|
||||
&& ! compute_change (&tz_rules[1], 1900 + tm->tm_year + 1))
|
||||
return 0;
|
||||
|
||||
__daylight = tz_rules[0].offset != tz_rules[1].offset;
|
||||
__timezone = -tz_rules[0].offset;
|
||||
|
Loading…
x
Reference in New Issue
Block a user