summaryrefslogtreecommitdiffstats
path: root/src/corelib/tools/qdatetime.cpp
diff options
context:
space:
mode:
authorEdward Welbourne <edward.welbourne@qt.io>2016-07-04 15:58:39 +0200
committerEdward Welbourne <edward.welbourne@qt.io>2016-07-04 15:58:39 +0200
commitb5695bd5be908970244919bcd7c19cbf7ccca2c4 (patch)
tree29f1e2895bef25db5b47e7e2cf01414f6b32ac8d /src/corelib/tools/qdatetime.cpp
parent840729a931a7d3fefbc4b4a8e01f8b1bd69a427e (diff)
parentb7744e0b05255fc468db2af215ba94eca4b7757b (diff)
Merge remote-tracking branch 'origin/5.6' into 5.7
Diffstat (limited to 'src/corelib/tools/qdatetime.cpp')
-rw-r--r--src/corelib/tools/qdatetime.cpp16
1 files changed, 13 insertions, 3 deletions
diff --git a/src/corelib/tools/qdatetime.cpp b/src/corelib/tools/qdatetime.cpp
index b539bef5db..b296361146 100644
--- a/src/corelib/tools/qdatetime.cpp
+++ b/src/corelib/tools/qdatetime.cpp
@@ -2721,7 +2721,7 @@ qint64 QDateTimePrivate::toMSecsSinceEpoch() const
case Qt::TimeZone:
#ifdef QT_BOOTSTRAPPED
- break;
+ return 0;
#else
return zoneMSecsToEpochMSecs(m_msecs, m_timeZone);
#endif
@@ -4782,7 +4782,12 @@ QDataStream &operator>>(QDataStream &in, QDate &date)
QDataStream &operator<<(QDataStream &out, const QTime &time)
{
- return out << quint32(time.mds);
+ if (out.version() >= QDataStream::Qt_4_0) {
+ return out << quint32(time.mds);
+ } else {
+ // Qt3 had no support for reading -1, QTime() was valid and serialized as 0
+ return out << quint32(time.isNull() ? 0 : time.mds);
+ }
}
/*!
@@ -4797,7 +4802,12 @@ QDataStream &operator>>(QDataStream &in, QTime &time)
{
quint32 ds;
in >> ds;
- time.mds = int(ds);
+ if (in.version() >= QDataStream::Qt_4_0) {
+ time.mds = int(ds);
+ } else {
+ // Qt3 would write 0 for a null time
+ time.mds = (ds == 0) ? QTime::NullTime : int(ds);
+ }
return in;
}