Simplify QTzTimeZonePrivate implementation

- Don't init m_icu with 0. It's a QSharedDataPointer, which inits to
  nullptr anyway.
- The copy ctor didn't do anything out of the ordinary, so = default it.
  It's also only used in the implementation of clone(), so make it private.

Removes three #if QT_CONFIG blocks.

We can't use ctor delegation here, because systemTimeZoneId() is a
virtual function.

Change-Id: I2cd06c3349686b6f21c897acb5c12185a36d5b9f
Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
This commit is contained in:
Marc Mutz 2017-02-21 13:30:14 +01:00
parent 2cda991ab1
commit 4cd002402f
2 changed files with 1 additions and 17 deletions

View File

@ -287,12 +287,12 @@ Q_DECL_CONSTEXPR inline bool operator!=(const QTzTransitionRule &lhs, const QTzT
class Q_AUTOTEST_EXPORT QTzTimeZonePrivate Q_DECL_FINAL : public QTimeZonePrivate
{
QTzTimeZonePrivate(const QTzTimeZonePrivate &) = default;
public:
// Create default time zone
QTzTimeZonePrivate();
// Create named time zone
QTzTimeZonePrivate(const QByteArray &ianaId);
QTzTimeZonePrivate(const QTzTimeZonePrivate &other);
~QTzTimeZonePrivate();
QTimeZonePrivate *clone() Q_DECL_OVERRIDE;

View File

@ -615,32 +615,16 @@ static QVector<QTimeZonePrivate::Data> calculatePosixTransitions(const QByteArra
// Create the system default time zone
QTzTimeZonePrivate::QTzTimeZonePrivate()
#if QT_CONFIG(icu)
: m_icu(0)
#endif
{
init(systemTimeZoneId());
}
// Create a named time zone
QTzTimeZonePrivate::QTzTimeZonePrivate(const QByteArray &ianaId)
#if QT_CONFIG(icu)
: m_icu(0)
#endif
{
init(ianaId);
}
QTzTimeZonePrivate::QTzTimeZonePrivate(const QTzTimeZonePrivate &other)
: QTimeZonePrivate(other), m_tranTimes(other.m_tranTimes),
m_tranRules(other.m_tranRules), m_abbreviations(other.m_abbreviations),
#if QT_CONFIG(icu)
m_icu(other.m_icu),
#endif
m_posixRule(other.m_posixRule)
{
}
QTzTimeZonePrivate::~QTzTimeZonePrivate()
{
}