Fix setting metadata on fdmmaterial containers

This commit is contained in:
fieldOfView 2017-05-30 15:19:15 +02:00 committed by Ghostkeeper
parent 1f49a87acb
commit a7cdf49018
No known key found for this signature in database
GPG key ID: C5F96EE2BC0F7E75

View file

@ -56,16 +56,14 @@ class XmlMaterialProfile(InstanceContainer):
def setMetaDataEntry(self, key, value):
if self.isReadOnly():
return
if self.getMetaDataEntry(key, None) == value:
# Prevent recursion caused by for loop.
return
super().setMetaDataEntry(key, value)
basefile = self.getMetaDataEntry("base_file", self._id) #if basefile is self.id, this is a basefile.
# Update all containers that share GUID and basefile
# Update all containers that share basefile
for container in ContainerRegistry.getInstance().findInstanceContainers(base_file = basefile):
container.setMetaDataEntry(key, value)
if container.getMetaDataEntry(key, None) != value: # Prevent recursion
container.setMetaDataEntry(key, value)
## Overridden from InstanceContainer, similar to setMetaDataEntry.
# without this function the setName would only set the name of the specific nozzle / material / machine combination container