diff --git a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp index 59bfd5db13c3f105c06fac3e7ecdb436392dcb13..bad02129c2dd9b67d789ac270e1fa29d790320ba 100644 --- a/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp +++ b/src/plugins/qmldesigner/components/propertyeditor/propertyeditorvalue.cpp @@ -333,12 +333,13 @@ void PropertyEditorNodeWrapper::setup() delete object; foreach (const QString &propertyName, m_modelNode.metaInfo().properties().keys()) { - PropertyEditorValue *valueObject = new PropertyEditorValue(&m_valuesPropertyMap); - valueObject->setName(propertyName); - valueObject->setValue(fxObjectNode.instanceValue(propertyName)); - - connect(valueObject, SIGNAL(valueChanged(QString, const QVariant&)), &m_valuesPropertyMap, SIGNAL(valueChanged(QString, const QVariant&))); - m_valuesPropertyMap.insert(propertyName, QVariant::fromValue(valueObject)); + if (fxObjectNode.isValid()) { + PropertyEditorValue *valueObject = new PropertyEditorValue(&m_valuesPropertyMap); + valueObject->setName(propertyName); + valueObject->setValue(fxObjectNode.instanceValue(propertyName)); + connect(valueObject, SIGNAL(valueChanged(QString, const QVariant&)), &m_valuesPropertyMap, SIGNAL(valueChanged(QString, const QVariant&))); + m_valuesPropertyMap.insert(propertyName, QVariant::fromValue(valueObject)); + } } } connect(&m_valuesPropertyMap, SIGNAL(valueChanged(const QString &, const QVariant&)), this, SLOT(changeValue(const QString&)));