diff --git a/cura/Settings/ContainerManager.py b/cura/Settings/ContainerManager.py index 840e8a7602..aea04ade34 100644 --- a/cura/Settings/ContainerManager.py +++ b/cura/Settings/ContainerManager.py @@ -336,19 +336,15 @@ class ContainerManager(QObject): # check if this is a material container. If so, check if any material with the same GUID is being used by any # stacks. container_ids_to_check = [container_id] - container_results = self._container_registry.findInstanceContainers(id = container_id) + container_results = self._container_registry.findInstanceContainers(id = container_id, type = "material") if container_results: this_container = container_results[0] container_guid = this_container.getMetaDataEntry("GUID") - # FIXME: only material containers have GUIDs, but to make it safer, metadata/material is also checked. - # but note that this is not a proper way to check whether a container is a material container. - # there should be a better way to do this - is_material = container_guid and this_container.getMetaDataEntry("material") - if is_material: - # check all material container IDs with the same guid - material_containers = self._container_registry.findInstanceContainers(GUID = container_guid) - if material_containers: - container_ids_to_check = [container.getId() for container in material_containers] + # check all material container IDs with the same GUID + material_containers = self._container_registry.findInstanceContainers(GUID = container_guid, + type = "material") + if material_containers: + container_ids_to_check = [container.getId() for container in material_containers] all_stacks = self._container_registry.findContainerStacks() for stack in all_stacks: