summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/declarative/qml/qdeclarativeobjectscriptclass.cpp6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/declarative/qml/qdeclarativeobjectscriptclass.cpp b/src/declarative/qml/qdeclarativeobjectscriptclass.cpp
index 8f37a1e..ec84da9 100644
--- a/src/declarative/qml/qdeclarativeobjectscriptclass.cpp
+++ b/src/declarative/qml/qdeclarativeobjectscriptclass.cpp
@@ -355,7 +355,11 @@ void QDeclarativeObjectScriptClass::setProperty(QObject *obj,
QLatin1String(QMetaType::typeName(lastData->propType));
context->throwError(error);
} else {
- QVariant v = enginePriv->scriptValueToVariant(value, lastData->propType);
+ QVariant v;
+ if (lastData->flags & QDeclarativePropertyCache::Data::IsQList)
+ v = enginePriv->scriptValueToVariant(value, qMetaTypeId<QList<QObject *> >());
+ else
+ v = enginePriv->scriptValueToVariant(value, lastData->propType);
if (!value.isVariant() && v.userType() == QMetaType::QVariantList &&
lastData->propType == qMetaTypeId<QVariant>()) {