diff options
author | Marco Benelli <marco.benelli@theqtcompany.com> | 2015-07-23 10:39:25 +0200 |
---|---|---|
committer | Marco Benelli <marco.benelli@theqtcompany.com> | 2015-09-01 14:49:13 +0000 |
commit | d43333cd1e83d72c0db5b39d9f0eb00d93fdb934 (patch) | |
tree | 2457a52927493307834eba1fa97361c999bb88f4 /tools/qmlplugindump | |
parent | 6067b74bb7baadbd28bfdfa8e2d63b775c972b0f (diff) |
Warn if a composite type is not ready and continue.
Change-Id: Ib28f484188466831e4c64aee0e36a27dd4842b06
Reviewed-by: Thomas Hartmann <Thomas.Hartmann@digia.com>
Diffstat (limited to 'tools/qmlplugindump')
-rw-r--r-- | tools/qmlplugindump/main.cpp | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/qmlplugindump/main.cpp b/tools/qmlplugindump/main.cpp index 96c23ae268..6248d3dc64 100644 --- a/tools/qmlplugindump/main.cpp +++ b/tools/qmlplugindump/main.cpp @@ -461,6 +461,12 @@ public: void dumpComposite(QQmlEngine *engine, const QQmlType *compositeType, QSet<QByteArray> &defaultReachableNames) { QQmlComponent e(engine, compositeType->sourceUrl()); + if (!e.isReady()) { + std::cerr << "WARNING: skipping module " << compositeType->elementName().toStdString() + << std::endl << e.errorString().toStdString() << std::endl; + return; + } + QObject *object = e.create(); if (!object) @@ -899,6 +905,7 @@ void printDebugMessage(QtMsgType, const QMessageLogContext &, const QString &msg // In case of QtFatalMsg the calling code will abort() when appropriate. } + int main(int argc, char *argv[]) { #if defined(Q_OS_WIN) && !defined(Q_CC_MINGW) @@ -1039,6 +1046,7 @@ int main(int argc, char *argv[]) if (calculateDependencies) getDependencies(engine, pluginImportUri, pluginImportVersion, &dependencies); compactDependencies(&dependencies); + // load the QtQml 2.2 builtins and the dependencies { QByteArray code("import QtQml 2.2"); |