Consistently handle DST start time in wxDateTime::Set().
authorVadim Zeitlin <vadim@wxwidgets.org>
Sun, 8 Sep 2013 18:00:58 +0000 (18:00 +0000)
committerVadim Zeitlin <vadim@wxwidgets.org>
Sun, 8 Sep 2013 18:00:58 +0000 (18:00 +0000)
commit17d698cca55ec9a4eee46f85c87219859aa48a3c
tree39fc92149277519341b714564c73750416a06950
parentd9b22d8fff794d8cadef74a2710be9e83c1adb5f
Consistently handle DST start time in wxDateTime::Set().

Always move the dates invalid due to DST (i.e. falling into the "missing" hour
on the DST start date) forward, as GNU libc does, even when using a different
CRT implementation, such as MSVC one which moves the invalid dates backwards.

This seems more expected and also fixes an especially bad problem which
happened due to moving the date backwards in Brazilian time zone where DST
starts at midnight as doing this changed the day and totally broke ParseDate()
assumption that setting wxDateTime to 00:00:00 at the given date really did
set it to this date.

Closes #15419.

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@74777 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
docs/changes.txt
interface/wx/datetime.h
src/common/datetime.cpp
tests/datetime/datetimetest.cpp