Merge pull request #1530 from Ultimaker/bugfix_CURA-3507_more-robust-quality-lookup

CURA-3507 Make quality lookup more robust
This commit is contained in:
jack 2017-03-13 10:26:15 +01:00 committed by GitHub
commit 7b9ea1073c

View File

@ -731,8 +731,11 @@ class MachineManager(QObject):
else:
self._material_incompatible_message.hide()
new_quality_id = old_quality.getId()
quality_type = old_quality.getMetaDataEntry("quality_type")
quality_type = None
new_quality_id = None
if old_quality:
new_quality_id = old_quality.getId()
quality_type = old_quality.getMetaDataEntry("quality_type")
if old_quality_changes:
quality_type = old_quality_changes.getMetaDataEntry("quality_type")
new_quality_id = old_quality_changes.getId()
@ -740,9 +743,11 @@ class MachineManager(QObject):
# See if the requested quality type is available in the new situation.
machine_definition = self._active_container_stack.getBottom()
quality_manager = QualityManager.getInstance()
candidate_quality = quality_manager.findQualityByQualityType(quality_type,
quality_manager.getWholeMachineDefinition(machine_definition),
[material_container])
candidate_quality = None
if quality_type:
candidate_quality = quality_manager.findQualityByQualityType(quality_type,
quality_manager.getWholeMachineDefinition(machine_definition),
[material_container])
if not candidate_quality or candidate_quality.getId() == "empty_quality":
# Fall back to a quality
new_quality = quality_manager.findQualityByQualityType(None,