diff options
Diffstat (limited to 'src/lib/corelib/loader/productresolver.cpp')
-rw-r--r-- | src/lib/corelib/loader/productresolver.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/lib/corelib/loader/productresolver.cpp b/src/lib/corelib/loader/productresolver.cpp index 9944fc56f..fd2f044a7 100644 --- a/src/lib/corelib/loader/productresolver.cpp +++ b/src/lib/corelib/loader/productresolver.cpp @@ -1589,7 +1589,13 @@ void PropertiesEvaluator::evaluateProperty( } else if (pd.type() == PropertyDeclaration::VariantList) { v = v.toList(); } + + // Enforce proper type for undefined values (note that path degrades to string). + if (!v.isValid()) + v = pd.typedNullValue(); + pd.checkAllowedValues(v, propValue->location(), propName, m_loaderState); + result[propName] = v; break; } |