From 19e4d8f19e90841689dbc5dd5d13ad730c1f936d Mon Sep 17 00:00:00 2001 From: Martin Jones Date: Fri, 19 Feb 2010 15:47:56 +1000 Subject: Delete the QmlImageRequestHandler in the correct thread. --- src/declarative/util/qmlpixmapcache.cpp | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/declarative/util/qmlpixmapcache.cpp b/src/declarative/util/qmlpixmapcache.cpp index 21fce5e..56903ce 100644 --- a/src/declarative/util/qmlpixmapcache.cpp +++ b/src/declarative/util/qmlpixmapcache.cpp @@ -267,12 +267,12 @@ QmlImageReader::QmlImageReader(QmlEngine *eng) QmlImageReader::~QmlImageReader() { - quit(); - wait(); readerMutex.lock(); readers.remove(engine); readerMutex.unlock(); - delete handler; + + quit(); + wait(); } QmlImageReader *QmlImageReader::instance(QmlEngine *engine) @@ -335,6 +335,9 @@ void QmlImageReader::run() handler = new QmlImageRequestHandler(this, engine); exec(); + + delete handler; + handler = 0; } //=========================================================================== -- cgit v0.12 From 1d54f0ff2bb7075c8aa27a2be67056d2a2863fc1 Mon Sep 17 00:00:00 2001 From: Leonardo Sobral Cunha Date: Fri, 19 Feb 2010 15:57:27 +1000 Subject: Fix tst_qmlgraphicstextedit::delegateLoading autotest The test case was wrong before, if one sub-component fails, then the whole component fails to load. --- .../qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/tests/auto/declarative/qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp b/tests/auto/declarative/qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp index 3221e9a..cc2f929 100644 --- a/tests/auto/declarative/qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp +++ b/tests/auto/declarative/qmlgraphicstextedit/tst_qmlgraphicstextedit.cpp @@ -668,18 +668,12 @@ void tst_qmlgraphicstextedit::delegateLoading() view->execute(); view->show(); view->setFocus(); - delegate = view->rootObject()->findChild("delegateOkay"); - QVERIFY(delegate); - delegate = view->rootObject()->findChild("delegateFail"); - QVERIFY(!delegate); + QTRY_VERIFY(!view->rootObject()); // there is fail item inside this test view->setSource(QUrl("http://localhost:42332/cursorHttpTestFail2.qml")); view->execute(); view->show(); view->setFocus(); - delegate = view->rootObject()->findChild("delegateOkay"); - QVERIFY(delegate); - delegate = view->rootObject()->findChild("delegateErrorA"); - QVERIFY(!delegate); + QTRY_VERIFY(!view->rootObject()); // there is fail item inside this test //ErrorB should get a component which is ready but component.create() returns null //Not sure how to accomplish this with QmlGraphicsTextEdits cursor delegate //###This could be a case of overzealous defensive programming -- cgit v0.12 From 5ef574960981066c50b390daf4e8fc45b6fe9f83 Mon Sep 17 00:00:00 2001 From: Michael Brasser Date: Fri, 19 Feb 2010 16:20:01 +1000 Subject: Fix tst_QmlGraphicsLoader::networkRequestUrl autotest. --- tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp b/tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp index a152ec6..2d3d5ee 100644 --- a/tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp +++ b/tests/auto/declarative/qmlgraphicsloader/tst_qmlgraphicsloader.cpp @@ -389,7 +389,7 @@ void tst_QmlGraphicsLoader::networkRequestUrl() { TestHTTPServer server(SERVER_PORT); QVERIFY(server.isValid()); - server.serveDirectory("data"); + server.serveDirectory(SRCDIR "/data"); QmlComponent component(&engine); component.setData(QByteArray("import Qt 4.6\nLoader { source: \"http://127.0.0.1:14445/Rect120x60.qml\" }"), TEST_FILE("")); @@ -441,7 +441,7 @@ void tst_QmlGraphicsLoader::failNetworkRequest() { TestHTTPServer server(SERVER_PORT); QVERIFY(server.isValid()); - server.serveDirectory("data"); + server.serveDirectory(SRCDIR "/data"); QTest::ignoreMessage(QtWarningMsg, "(:-1: Network error for URL http://127.0.0.1:14445/IDontExist.qml) "); -- cgit v0.12