From b4d23e61ed19c770caf6b993a8ab0e4474d3f417 Mon Sep 17 00:00:00 2001 From: Charles Yin Date: Fri, 11 Nov 2011 11:33:41 +1000 Subject: Make QTest::qWait() handle DeferredDelete event The QTest::qWait() function does not handle DeferredDelete, in this case all deleteLater() calls before the qWait() won't be processed during the wait. Add an explicit sendPostedEvents(0, QEvent::DeferredDelete) to fix this problem. Task-number:QTBUG-22633 Change-Id: I2c5574b4e7d3c070fad6382dc36ddfd1dfac50d6 Reviewed-by: Jason McDonald --- src/testlib/qtestsystem.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/testlib/qtestsystem.h') diff --git a/src/testlib/qtestsystem.h b/src/testlib/qtestsystem.h index 0165e51528..6a87fe3460 100644 --- a/src/testlib/qtestsystem.h +++ b/src/testlib/qtestsystem.h @@ -68,6 +68,7 @@ namespace QTest timer.start(); do { QCoreApplication::processEvents(QEventLoop::AllEvents, ms); + QCoreApplication::sendPostedEvents(0, QEvent::DeferredDelete); QTest::qSleep(10); } while (timer.elapsed() < ms); } @@ -97,3 +98,4 @@ QT_END_NAMESPACE QT_END_HEADER #endif + -- cgit v1.2.3