diff options
-rw-r--r-- | src/corelib/time/qdatetime.cpp | 17 | ||||
-rw-r--r-- | src/corelib/time/qdatetime_p.h | 3 |
2 files changed, 6 insertions, 14 deletions
diff --git a/src/corelib/time/qdatetime.cpp b/src/corelib/time/qdatetime.cpp index 05f0f37ee8..8ee01dde31 100644 --- a/src/corelib/time/qdatetime.cpp +++ b/src/corelib/time/qdatetime.cpp @@ -3839,23 +3839,17 @@ qint64 QDateTime::toSecsSinceEpoch() const */ void QDateTime::setMSecsSinceEpoch(qint64 msecs) { - const auto spec = getSpec(d); auto status = getStatus(d); + const auto spec = extractSpec(status); status &= ~QDateTimePrivate::ValidityMask; switch (spec) { case Qt::UTC: - status = status - | QDateTimePrivate::ValidDate - | QDateTimePrivate::ValidTime - | QDateTimePrivate::ValidDateTime; + status |= QDateTimePrivate::ValidWhenMask; break; case Qt::OffsetFromUTC: msecs = msecs + (d->m_offsetFromUtc * 1000); - status = status - | QDateTimePrivate::ValidDate - | QDateTimePrivate::ValidTime - | QDateTimePrivate::ValidDateTime; + status |= QDateTimePrivate::ValidWhenMask; break; case Qt::TimeZone: Q_ASSERT(!d.isShort()); @@ -3876,10 +3870,7 @@ void QDateTime::setMSecsSinceEpoch(qint64 msecs) d->m_offsetFromUtc = d->m_timeZone.d->standardTimeOffset(msecs); } msecs = msecs + (d->m_offsetFromUtc * 1000); - status = status - | QDateTimePrivate::ValidDate - | QDateTimePrivate::ValidTime - | QDateTimePrivate::ValidDateTime; + status |= QDateTimePrivate::ValidWhenMask; #endif // timezone break; case Qt::LocalTime: { diff --git a/src/corelib/time/qdatetime_p.h b/src/corelib/time/qdatetime_p.h index 2b690841ee..9dcd896d59 100644 --- a/src/corelib/time/qdatetime_p.h +++ b/src/corelib/time/qdatetime_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Copyright (C) 2016 Intel Corporation. ** Contact: https://www.qt.io/licensing/ ** @@ -96,6 +96,7 @@ public: ValidDate = 0x02, ValidTime = 0x04, ValidDateTime = 0x08, + ValidWhenMask = ValidDate | ValidTime | ValidDateTime, TimeSpecMask = 0x30, |