diff options
Diffstat (limited to 'src/lib/corelib/jsextensions/moduleproperties.cpp')
-rw-r--r-- | src/lib/corelib/jsextensions/moduleproperties.cpp | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/lib/corelib/jsextensions/moduleproperties.cpp b/src/lib/corelib/jsextensions/moduleproperties.cpp index 7d0a3e0b6..d80a4bc5f 100644 --- a/src/lib/corelib/jsextensions/moduleproperties.cpp +++ b/src/lib/corelib/jsextensions/moduleproperties.cpp @@ -82,12 +82,6 @@ static QScriptValue getModuleProperty(const ResolvedProduct *product, const Arti value = engine->retrieveFromPropertyCache(moduleName, propertyName, properties); if (!value.isValid()) { value = properties->moduleProperty(moduleName, propertyName, isPresent); - const Property p(product->uniqueName(), moduleName, propertyName, value, - Property::PropertyInModule); - if (artifact) - engine->addPropertyRequestedFromArtifact(artifact, p); - else - engine->addPropertyRequestedInScript(p); // Cache the variant value. We must not cache the QScriptValue here, because it's a // reference and the user might change the actual object. @@ -96,6 +90,14 @@ static QScriptValue getModuleProperty(const ResolvedProduct *product, const Arti } else if (isPresent) { *isPresent = true; } + + const Property p(product->uniqueName(), moduleName, propertyName, value, + Property::PropertyInModule); + if (artifact) + engine->addPropertyRequestedFromArtifact(artifact, p); + else + engine->addPropertyRequestedInScript(p); + return engine->toScriptValue(value); } |