diff options
author | Edward Welbourne <edward.welbourne@qt.io> | 2022-01-25 15:53:48 +0100 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-01-30 22:11:08 +0000 |
commit | 574fc358e70b0d5149cb2ffb98118ced71e7d5c2 (patch) | |
tree | a23ee6d2e64d81bc304da64190e6a9bddfcba026 /dist | |
parent | 6801c18813d8521fda44515cc9ee745c1b9bf85f (diff) |
Fix misguided winding backwards past start of start of MS TZ datav6.3.0-beta1
QWinTimeZonePrivate::data()'s search for a rule applicable to a given
time, in the first year whose milliseconds qint64 can represent, tries
to look at the preceding year to get start-of-year data, which leads
to misleading results. It does so to determine whether to use a rule's
standard or daylight-saving details, but this year is long before the
invention of daylight-saving time, so we can bypass the whole mess.
Unfortunately, MS's data does pretend (in some zones) that DST has
always been in effect, so cutting off that claim at some historical
point will actually get better results for before the cut-off than for
the period after it, until the relevant zone actually adopted DST.
Conservatively put the cut-off at 1900, before any actual zone used
DST, albeit after the idea was originally floated.
This fixes a failure found by some QDate::{start,end}OfDay() tests
that I want to introduce.
Task-number: QTBUG-99747
Change-Id: I15cf9dd092b946191e8863c7e85fbeb4ba6c106d
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
(cherry picked from commit 9a83706046406f233ea6f93a2f90fd5b05916ee9)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'dist')
0 files changed, 0 insertions, 0 deletions