aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2016-08-26 16:15:32 +0200
committerChristian Kandeler <christian.kandeler@qt.io>2016-08-29 09:12:22 +0000
commitf2302b034f4441599eaa782fdc3e1b0f9915564e (patch)
treead296b64ce8785b499aca63802c5d921aa2b223b
parentf465a59fcd181d94b77eeb821485a8bc39ae960e (diff)
Make sure a product's module properties are never null
That could happen when the product was force-disabled due to module loader errors (in IDE mode), leading to crashes later on. Change-Id: I7b3967cc238bb9e393af48a5ca599fcd410ed0b5 Reviewed-by: Jake Petroules <jake.petroules@qt.io>
-rw-r--r--src/lib/corelib/language/projectresolver.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/lib/corelib/language/projectresolver.cpp b/src/lib/corelib/language/projectresolver.cpp
index ed866cf12..e712aff49 100644
--- a/src/lib/corelib/language/projectresolver.cpp
+++ b/src/lib/corelib/language/projectresolver.cpp
@@ -315,6 +315,7 @@ void ProjectResolver::resolveProduct(Item *item, ProjectContext *projectContext)
m_productContext = &productContext;
productContext.item = item;
ResolvedProductPtr product = ResolvedProduct::create();
+ product->moduleProperties = PropertyMapInternal::create();
product->project = projectContext->project;
m_productItemMap.insert(product, item);
projectContext->project->products += product;
@@ -356,7 +357,6 @@ void ProjectResolver::resolveProduct(Item *item, ProjectContext *projectContext)
QVariantMap moduleProperties;
moduleProperties.insert(QLatin1String("modules"),
product->productProperties.take(QLatin1String("modules")));
- product->moduleProperties = PropertyMapInternal::create();
product->moduleProperties->setValue(moduleProperties);
ModuleProperties::init(m_evaluator->scriptValue(item), product);