diff options
author | Ulf Hermann <ulf.hermann@qt.io> | 2021-08-18 09:54:06 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2021-08-19 12:42:05 +0000 |
commit | dccccaf53b8da87ee4fb59d688017e65a10eb983 (patch) | |
tree | 8e5028189e421d1f4658fb8e5e11788067a53660 /src/qml/qml/qqmlimport.cpp | |
parent | 240da0de09228da1925b1bdafe7b67987d3013eb (diff) |
Allow import of modules with only C++ types built into the binary
Check if the module provides a .qmltypes file. If so, we assume that
there are some C++ types to be imported.
Change-Id: Iad15d9c834c9bcebd76a62926620902031493557
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
(cherry picked from commit 358976b7ad28226136d3ac04260f82e88dbf784a)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
Diffstat (limited to 'src/qml/qml/qqmlimport.cpp')
-rw-r--r-- | src/qml/qml/qqmlimport.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/qml/qml/qqmlimport.cpp b/src/qml/qml/qqmlimport.cpp index a5c11fa2f2..7088d25192 100644 --- a/src/qml/qml/qqmlimport.cpp +++ b/src/qml/qml/qqmlimport.cpp @@ -1369,8 +1369,12 @@ QTypeRevision QQmlImportsPrivate::addLibraryImport( return matchingVersion; if (inserted->qmlDirComponents.isEmpty() && inserted->qmlDirScripts.isEmpty()) { - if (qmldir.plugins().isEmpty() && !qmldir.imports().isEmpty()) - return validVersion(); // This is a pure redirection + if (qmldir.plugins().isEmpty()) { + if (!qmldir.imports().isEmpty()) + return validVersion(); // This is a pure redirection + if (qmldir.hasTypeInfo()) + return validVersion(); // A pure C++ module without plugin + } errors->prepend(moduleNotFoundError(uri, relevantVersion(uri, version))); return QTypeRevision(); } else if (qmldir.hasContent()) { |