Simplify the QDateTimePrivate::setTimeSpec() function

Change-Id: I06bae9392f534e45b3f1ffff144df36cc98b5f3f
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Edward Welbourne <edward.welbourne@qt.io>
bb10
Thiago Macieira 2016-05-12 15:45:02 -07:00
parent d3279b3217
commit 8e12120a2b
1 changed files with 11 additions and 16 deletions

View File

@ -2513,31 +2513,26 @@ void QDateTimePrivate::setTimeSpec(Qt::TimeSpec spec, int offsetSeconds)
clearValidDateTime();
clearSetToDaylightStatus();
#ifndef QT_BOOTSTRAPPED
m_timeZone = QTimeZone();
#endif // QT_BOOTSTRAPPED
switch (spec) {
case Qt::OffsetFromUTC:
if (offsetSeconds == 0) {
setSpec(Qt::UTC);
m_offsetFromUtc = 0;
} else {
setSpec(Qt::OffsetFromUTC);
m_offsetFromUtc = offsetSeconds;
}
if (offsetSeconds == 0)
spec = Qt::UTC;
break;
case Qt::TimeZone:
// Use system time zone instead
setSpec(Qt::LocalTime);
m_offsetFromUtc = 0;
break;
spec = Qt::LocalTime;
// fallthrough
case Qt::UTC:
case Qt::LocalTime:
setSpec(spec);
m_offsetFromUtc = 0;
offsetSeconds = 0;
break;
}
setSpec(spec);
m_offsetFromUtc = offsetSeconds;
#ifndef QT_BOOTSTRAPPED
m_timeZone = QTimeZone();
#endif // QT_BOOTSTRAPPED
}
void QDateTimePrivate::setDateTime(const QDate &date, const QTime &time)