Merge pull request #6458 from Ultimaker/CURA-6817_intent_fix_sync_config

Fix synchronise configurations (intent branch).
This commit is contained in:
Lipu Fei 2019-10-02 08:53:53 +02:00 committed by GitHub
commit 179fa325fc
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1456,11 +1456,11 @@ class MachineManager(QObject):
# Find the material profile that the printer has stored.
# This might find one of the duplicates if the user duplicated the material to sync with. But that's okay; both have this GUID so both are correct.
approximate_diameter = int(self._global_container_stack.extruderList[int(position)].getApproximateMaterialDiameter())
materials_with_guid = container_registry.findInstanceContainersMetadata(guid = extruder_configuration.material.guid, approximate_diameter = approximate_diameter)
materials_with_guid = container_registry.findInstanceContainersMetadata(GUID = extruder_configuration.material.guid, approximate_diameter = str(approximate_diameter), ignore_case = True)
material_container_node = variant_node.preferredMaterial(approximate_diameter)
if materials_with_guid: # We also have the material profile that the printer wants to share.
base_file = materials_with_guid[0]["base_file"]
material_container_node = variant_node.materials.get(base_file, default = material_container_node) # If Cura thinks that the selected material is not available for this printer, revert to the preferred material.
material_container_node = variant_node.materials.get(base_file, material_container_node)
self._setMaterial(position, material_container_node)
self._global_container_stack.extruders[position].setEnabled(True)