diff options
Diffstat (limited to 'tests/auto/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp')
-rw-r--r-- | tests/auto/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/tests/auto/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp b/tests/auto/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp index 2d7c0c2f64..f539f012df 100644 --- a/tests/auto/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp +++ b/tests/auto/concurrent/qtconcurrentmap/tst_qtconcurrentmap.cpp @@ -2402,9 +2402,12 @@ void tst_QtConcurrentMap::qFutureAssignmentLeak() future.waitForFinished(); } - QCOMPARE(currentInstanceCount.load(), 1000); + // Use QTRY_COMPARE because QtConcurrent::ThreadEngine::asynchronousFinish() + // deletes its internals after signaling finished, so it might still be holding + // on to copies of InstanceCounter for a short while. + QTRY_COMPARE(currentInstanceCount.load(), 1000); future = QFuture<InstanceCounter>(); - QCOMPARE(currentInstanceCount.load(), 0); + QTRY_COMPARE(currentInstanceCount.load(), 0); } inline void increment(int &num) |