aboutsummaryrefslogtreecommitdiffstats
path: root/src/qmltyperegistrar
diff options
context:
space:
mode:
authorUlf Hermann <ulf.hermann@qt.io>2020-06-10 15:37:14 +0200
committerUlf Hermann <ulf.hermann@qt.io>2020-06-18 11:08:06 +0200
commitf4b1e41748adcb9189edf56545bbc2cde7138d9e (patch)
treec4cbf8aa75326577e527ea0650e40eb2cc0d79ec /src/qmltyperegistrar
parent13a78a725b3ffa7c904ea2ef1c6c9876f5c6ce35 (diff)
qmltyperegistrar: Always register version x.0 of the module
If version x.y exists for y > 0, we can assume that version x.0 also exists, even if no types have been specially registered for it. This helps with making empty modules importable. Change-Id: I3f5209db5836fd889b3ebec63fa348b76738a825 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/qmltyperegistrar')
-rw-r--r--src/qmltyperegistrar/qmltyperegistrar.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/qmltyperegistrar/qmltyperegistrar.cpp b/src/qmltyperegistrar/qmltyperegistrar.cpp
index 49929e9c1e..69db787a4e 100644
--- a/src/qmltyperegistrar/qmltyperegistrar.cpp
+++ b/src/qmltyperegistrar/qmltyperegistrar.cpp
@@ -413,6 +413,12 @@ int main(int argc, char **argv)
fprintf(output, "void %s()\n{", qPrintable(functionName));
const auto majorVersion = parser.value(majorVersionOption);
+ const auto minorVersion = parser.value(minorVersionOption);
+
+ if (minorVersion.toInt() != 0) {
+ fprintf(output, "\n qmlRegisterModule(\"%s\", %s, 0);",
+ qPrintable(module), qPrintable(majorVersion));
+ }
for (const QJsonObject &classDef : qAsConst(types)) {
if (!classDef.value(QLatin1String("registerable")).toBool())
@@ -430,8 +436,7 @@ int main(int argc, char **argv)
}
fprintf(output, "\n qmlRegisterModule(\"%s\", %s, %s);",
- qPrintable(module), qPrintable(majorVersion),
- qPrintable(parser.value(minorVersionOption)));
+ qPrintable(module), qPrintable(majorVersion), qPrintable(minorVersion));
fprintf(output, "\n}\n");
fprintf(output, "\nstatic const QQmlModuleRegistration registration(\"%s\", %s);\n",
qPrintable(module), qPrintable(functionName));