aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian Kandeler <christian.kandeler@qt.io>2019-01-02 13:25:29 +0100
committerChristian Kandeler <christian.kandeler@qt.io>2019-01-07 11:57:01 +0000
commit7a047f825ba82e3f05b87c68ac421f8e95815920 (patch)
tree526556e555178e131e9b7363dccb1d3cb928147b
parent34036e9197d86d36338b6b4bec743b65a0bf316a (diff)
ModuleLoader: Fix possible crash in verbose mode1.12
The assumption in the code that a value is always a JSSourceValue is not (anymore?) true. Change-Id: Ie1056913d4817776f5ce483f4fb0f60144cda9c6 Reviewed-by: Joerg Bornemann <joerg.bornemann@qt.io>
-rw-r--r--src/lib/corelib/language/moduleloader.cpp6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/lib/corelib/language/moduleloader.cpp b/src/lib/corelib/language/moduleloader.cpp
index 583354c4d..41727f5da 100644
--- a/src/lib/corelib/language/moduleloader.cpp
+++ b/src/lib/corelib/language/moduleloader.cpp
@@ -2341,9 +2341,11 @@ void ModuleLoader::adjustDefiningItemsInGroupModuleInstances(const Item::Module
<< ", old defining item was " << v->definingItem()
<< " with scope" << v->definingItem()->scope()
<< ", new defining item is" << replacement
- << " with scope" << replacement->scope()
- << ", value source code is "
+ << " with scope" << replacement->scope();
+ if (v->type() == Value::JSSourceValueType) {
+ qCDebug(lcModuleLoader) << "value source code is"
<< std::static_pointer_cast<JSSourceValue>(v)->sourceCode().toString();
+ }
replacement->setPropertyDeclaration(propName, decl);
replacement->setProperty(propName, v);
} else {