diff options
author | Qt Continuous Integration System <qt-info@nokia.com> | 2011-11-23 10:06:53 (GMT) |
---|---|---|
committer | Qt Continuous Integration System <qt-info@nokia.com> | 2011-11-23 10:06:53 (GMT) |
commit | 05ba0b4d0d32ea2a823aee0b5d196008d95a021d (patch) | |
tree | d02bf5f2552db299f2a906549f9c51d0f4de8b9d /src/declarative | |
parent | 8960973e97713205d1aeb209806daca456c55111 (diff) | |
parent | 787a9ce07accfcaddada8235ae204a5aa2025309 (diff) | |
download | Qt-05ba0b4d0d32ea2a823aee0b5d196008d95a021d.zip Qt-05ba0b4d0d32ea2a823aee0b5d196008d95a021d.tar.gz Qt-05ba0b4d0d32ea2a823aee0b5d196008d95a021d.tar.bz2 |
Merge branch 'master' of scm.dev.nokia.troll.no:qt/qt-qml-staging into master-integration
* 'master' of scm.dev.nokia.troll.no:qt/qt-qml-staging:
Sequential reading not supported.
DeclarativeDebugServer: Instantiate QPluginLoader on heap
Fix failing unit tests.
qmlplugindump: Fix dumping empty names for generated QMetaObjects.
Fix compile with -qtnamespace
Properly protect access to pixmap reader thread with mutex
Move tga support from Qt3d to Qt.
Move tga support from Qt3d to Qt.
Properly protect access to pixmap reader thread with mutex
qmlplugindump: Add flush to fix output redirection on windows.
Diffstat (limited to 'src/declarative')
-rw-r--r-- | src/declarative/debugger/qdeclarativedebugserver.cpp | 15 |
1 files changed, 8 insertions, 7 deletions
diff --git a/src/declarative/debugger/qdeclarativedebugserver.cpp b/src/declarative/debugger/qdeclarativedebugserver.cpp index 3e0c326..05f63c7 100644 --- a/src/declarative/debugger/qdeclarativedebugserver.cpp +++ b/src/declarative/debugger/qdeclarativedebugserver.cpp @@ -96,7 +96,7 @@ public: private: // private slot void _q_deliverMessage(const QString &serviceName, const QByteArray &message); - static QDeclarativeDebugServerConnection *loadConnectionPlugin(const QString &pluginName); + static QDeclarativeDebugServerConnection *loadConnectionPlugin(QPluginLoader *loader, const QString &pluginName); }; QDeclarativeDebugServerPrivate::QDeclarativeDebugServerPrivate() : @@ -120,7 +120,7 @@ void QDeclarativeDebugServerPrivate::advertisePlugins() } QDeclarativeDebugServerConnection *QDeclarativeDebugServerPrivate::loadConnectionPlugin( - const QString &pluginName) + QPluginLoader *loader, const QString &pluginName) { #ifndef QT_NO_LIBRARY QStringList pluginCandidates; @@ -137,17 +137,17 @@ QDeclarativeDebugServerConnection *QDeclarativeDebugServerPrivate::loadConnectio } foreach (const QString &pluginPath, pluginCandidates) { - QPluginLoader loader(pluginPath); - if (!loader.load()) { + loader->setFileName(pluginPath); + if (!loader->load()) { continue; } QDeclarativeDebugServerConnection *connection = 0; - if (QObject *instance = loader.instance()) + if (QObject *instance = loader->instance()) connection = qobject_cast<QDeclarativeDebugServerConnection*>(instance); if (connection) return connection; - loader.unload(); + loader->unload(); } #endif return 0; @@ -202,8 +202,9 @@ QDeclarativeDebugServer *QDeclarativeDebugServer::instance() if (ok) { server = new QDeclarativeDebugServer(); + QPluginLoader *loader = new QPluginLoader(server); QDeclarativeDebugServerConnection *connection - = QDeclarativeDebugServerPrivate::loadConnectionPlugin(pluginName); + = QDeclarativeDebugServerPrivate::loadConnectionPlugin(loader, pluginName); if (connection) { server->d_func()->connection = connection; |