diff --git a/src/App/PropertyContainer.cpp b/src/App/PropertyContainer.cpp index e66628eae9..97e6a4b539 100644 --- a/src/App/PropertyContainer.cpp +++ b/src/App/PropertyContainer.cpp @@ -341,7 +341,7 @@ void PropertyContainer::Restore(Base::XMLReader &reader) // type and the behaviour would be undefined. try { auto prop = getPropertyByName(PropName.c_str()); - if(!prop) + if(!prop || prop->getContainer() != this) prop = dynamicProps.restore(*this,PropName.c_str(),TypeName.c_str(),reader); decltype(Property::StatusBits) status;