Use a new context for every new created component.

This is fixing many crashes but maybe not anymore in line with the qml
viewer.

Task-Number: BAUHAUS-622
Reviewed-by: kkoehne
This commit is contained in:
Marco Bubke
2010-04-22 19:46:55 +02:00
committed by Kai Koehne
parent 9d34246a3a
commit d65af80cd6

View File

@@ -176,7 +176,7 @@ QObject *NodeMetaInfo::createInstance(QDeclarativeContext *context) const
// qml component // qml component
// TODO: This is maybe expensive ... // TODO: This is maybe expensive ...
QDeclarativeComponent component(context->engine(), QUrl::fromLocalFile(m_data->qmlFile)); QDeclarativeComponent component(context->engine(), QUrl::fromLocalFile(m_data->qmlFile));
object = component.create(context); object = component.create(new QDeclarativeContext(context));
} else { } else {
// primitive // primitive
object = QDeclarativeMetaType::qmlType(typeName().toAscii(), minorVersion(), majorVersion())->create(); object = QDeclarativeMetaType::qmlType(typeName().toAscii(), minorVersion(), majorVersion())->create();