diff options
author | Marc Mutz <marc.mutz@qt.io> | 2022-01-04 17:46:20 +0100 |
---|---|---|
committer | Marc Mutz <marc.mutz@qt.io> | 2022-01-05 21:29:54 +0100 |
commit | abe802cd00bb28e95c63d318b0360db6fbf51666 (patch) | |
tree | dccaacf44cc8835df63d925ddbb69a5948dbf75c /src/corelib/time | |
parent | 23aa51991dee2864d7f1d1acee953fd5c7b409fe (diff) |
QTzTimeZonePrivate: use ctor delegation instead of init()
This makes it obvious that the code in init() is only called from the
constructor and its m_icu handling doesn't need mutex protection (to
be added in a subsequent commit).
Since the input to the ctor is the result of a virtual function,
factor said virtual into a static function and call that instead.
Pick-to: 6.3 6.2 5.15
Change-Id: I7c49f2e865201a2ce2b2d86b19dae29c6d337e0e
Reviewed-by: Lars Knoll <lars.knoll@qt.io>
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
Diffstat (limited to 'src/corelib/time')
-rw-r--r-- | src/corelib/time/qtimezoneprivate_p.h | 2 | ||||
-rw-r--r-- | src/corelib/time/qtimezoneprivate_tz.cpp | 16 |
2 files changed, 9 insertions, 9 deletions
diff --git a/src/corelib/time/qtimezoneprivate_p.h b/src/corelib/time/qtimezoneprivate_p.h index b37d9995e3..484bbe56eb 100644 --- a/src/corelib/time/qtimezoneprivate_p.h +++ b/src/corelib/time/qtimezoneprivate_p.h @@ -348,7 +348,7 @@ public: QList<QByteArray> availableTimeZoneIds(QLocale::Territory territory) const override; private: - void init(const QByteArray &ianaId); + static QByteArray staticSystemTimeZoneId(); QList<QTimeZonePrivate::Data> getPosixTransitions(qint64 msNear) const; Data dataForTzTransition(QTzTransitionTime tran) const; diff --git a/src/corelib/time/qtimezoneprivate_tz.cpp b/src/corelib/time/qtimezoneprivate_tz.cpp index a9d6d06125..b23ccfb3b2 100644 --- a/src/corelib/time/qtimezoneprivate_tz.cpp +++ b/src/corelib/time/qtimezoneprivate_tz.cpp @@ -719,14 +719,8 @@ static QList<QTimeZonePrivate::Data> calculatePosixTransitions(const QByteArray // Create the system default time zone QTzTimeZonePrivate::QTzTimeZonePrivate() + : QTzTimeZonePrivate(staticSystemTimeZoneId()) { - init(systemTimeZoneId()); -} - -// Create a named time zone -QTzTimeZonePrivate::QTzTimeZonePrivate(const QByteArray &ianaId) -{ - init(ianaId); } QTzTimeZonePrivate::~QTzTimeZonePrivate() @@ -953,7 +947,8 @@ QTzTimeZoneCacheEntry QTzTimeZoneCache::fetchEntry(const QByteArray &ianaId) return ret; } -void QTzTimeZonePrivate::init(const QByteArray &ianaId) +// Create a named time zone +QTzTimeZonePrivate::QTzTimeZonePrivate(const QByteArray &ianaId) { static QTzTimeZoneCache tzCache; auto entry = tzCache.fetchEntry(ianaId); @@ -1361,6 +1356,11 @@ private: QByteArray QTzTimeZonePrivate::systemTimeZoneId() const { + return staticSystemTimeZoneId(); +} + +QByteArray QTzTimeZonePrivate::staticSystemTimeZoneId() +{ // Check TZ env var first, if not populated try find it QByteArray ianaId = qgetenv("TZ"); |