diff options
author | Frederik Gladhorn <frederik.gladhorn@qt.io> | 2019-05-27 16:22:25 +0200 |
---|---|---|
committer | Frederik Gladhorn <frederik.gladhorn@qt.io> | 2019-05-27 16:22:25 +0200 |
commit | 39ba71c1ca03ac9b640d3af44ed8e08937b8ce45 (patch) | |
tree | 11b1a61eaf3f1d2d3b835de427801d16d1c1bb84 | |
parent | 682b729f42d30b8fec7465b6b8f508c32bad7f68 (diff) | |
parent | 93258593a47eb53502e7ceb38fc6fc4f05021389 (diff) |
Merge 5.12 into 5.12.4
Change-Id: I2216af4ac7306e1b2328111b5778ccccbabc0532
-rw-r--r-- | src/charts/candlestickchart/qcandlestickseries.cpp | 5 | ||||
-rw-r--r-- | src/charts/chartdataset.cpp | 4 | ||||
-rw-r--r-- | tests/auto/qcandlestickseries/tst_qcandlestickseries.cpp | 28 |
3 files changed, 22 insertions, 15 deletions
diff --git a/src/charts/candlestickchart/qcandlestickseries.cpp b/src/charts/candlestickchart/qcandlestickseries.cpp index b02bb5cd..8aefca54 100644 --- a/src/charts/candlestickchart/qcandlestickseries.cpp +++ b/src/charts/candlestickchart/qcandlestickseries.cpp @@ -553,7 +553,7 @@ bool QCandlestickSeries::remove(const QList<QCandlestickSet *> &sets) emit candlestickSetsRemoved(sets); emit countChanged(); foreach (QCandlestickSet *set, sets) - set->deleteLater(); + delete set; } return success; @@ -630,7 +630,7 @@ void QCandlestickSeries::clear() emit candlestickSetsRemoved(sets); emit countChanged(); foreach (QCandlestickSet *set, sets) - set->deleteLater(); + delete set; } } @@ -931,6 +931,7 @@ QCandlestickSeriesPrivate::QCandlestickSeriesPrivate(QCandlestickSeries *q) QCandlestickSeriesPrivate::~QCandlestickSeriesPrivate() { disconnect(this, 0, 0, 0); + qDeleteAll(m_sets); } void QCandlestickSeriesPrivate::initializeDomain() diff --git a/src/charts/chartdataset.cpp b/src/charts/chartdataset.cpp index 3fe0f2eb..4fec0ae1 100644 --- a/src/charts/chartdataset.cpp +++ b/src/charts/chartdataset.cpp @@ -421,7 +421,7 @@ void ChartDataSet::deleteAllSeries() { foreach (QAbstractSeries *s , m_seriesList){ removeSeries(s); - s->deleteLater(); + delete s; } Q_ASSERT(m_seriesList.count() == 0); } @@ -430,7 +430,7 @@ void ChartDataSet::deleteAllAxes() { foreach (QAbstractAxis *a , m_axisList){ removeAxis(a); - a->deleteLater(); + delete a; } Q_ASSERT(m_axisList.count() == 0); } diff --git a/tests/auto/qcandlestickseries/tst_qcandlestickseries.cpp b/tests/auto/qcandlestickseries/tst_qcandlestickseries.cpp index d65a5a34..a7b00836 100644 --- a/tests/auto/qcandlestickseries/tst_qcandlestickseries.cpp +++ b/tests/auto/qcandlestickseries/tst_qcandlestickseries.cpp @@ -81,8 +81,15 @@ private Q_SLOTS: void mouseDoubleClicked(); private: - QCandlestickSeries *m_series; - QList<QCandlestickSet *> m_sets; + QPointer<QCandlestickSeries> m_series; + struct SetList : QList<QPointer<QCandlestickSet>> { + operator QList<QCandlestickSet *> () const { + QList<QCandlestickSet *> list; + for (int i = 0; i < count(); ++i) + list.append(at(i)); + return list; + } + }; SetList m_sets; }; void tst_QCandlestickSeries::initTestCase() @@ -119,14 +126,9 @@ void tst_QCandlestickSeries::init() void tst_QCandlestickSeries::cleanup() { - foreach (QCandlestickSet *set, m_sets) { - m_series->remove(set); - m_sets.removeAll(set); - delete set; - } - delete m_series; - m_series = nullptr; + qDeleteAll(m_sets); + m_sets.clear(); } void tst_QCandlestickSeries::qCandlestickSeries() @@ -177,16 +179,20 @@ void tst_QCandlestickSeries::remove() // Remove some sets const int removeCount = 3; - for (int i = 0; i < removeCount; ++i) + for (int i = 0; i < removeCount; ++i) { QVERIFY(m_series->remove(m_sets.at(i))); + QVERIFY(!m_sets.at(i)); + } QCOMPARE(m_series->count(), m_sets.count() - removeCount); for (int i = removeCount; i < m_sets.count(); ++i) QCOMPARE(m_series->sets().at(i - removeCount), m_sets.at(i)); // Try removing all sets again (should be ok, even if some sets have already been removed) - for (int i = 0; i < m_sets.count(); ++i) + for (int i = 0; i < m_sets.count(); ++i) { m_series->remove(m_sets.at(i)); + QVERIFY(!m_sets.at(i)); + } QCOMPARE(m_series->count(), 0); } |