Browse Source

Only show error when quality is global with material/nozzle

Don't crash. Only show an error message that indicates that there is a problem with this one.

Contributes to issue CURA-5045.
Ghostkeeper 7 years ago
parent
commit
727a164722
1 changed files with 3 additions and 1 deletions
  1. 3 1
      cura/Machines/QualityManager.py

+ 3 - 1
cura/Machines/QualityManager.py

@@ -6,6 +6,7 @@ from typing import TYPE_CHECKING, Optional
 from PyQt5.QtCore import QObject, QTimer, pyqtSignal, pyqtSlot
 
 from UM.Application import Application
+from UM.ConfigurationErrorMessage import ConfigurationErrorMessage
 from UM.Logger import Logger
 from UM.Util import parseBool
 from UM.Settings.InstanceContainer import InstanceContainer
@@ -84,7 +85,8 @@ class QualityManager(QObject):
 
             # Sanity check: material+variant and is_global_quality cannot be present at the same time
             if is_global_quality and (root_material_id or variant_name):
-                raise RuntimeError("Quality profile [%s] contains invalid data: it is a global quality but contains 'material' and 'nozzle' info." % metadata["id"])
+                ConfigurationErrorMessage.getInstance().addFaultyContainers(metadata["id"])
+                continue
 
             if definition_id not in self._machine_variant_material_quality_type_to_quality_dict:
                 self._machine_variant_material_quality_type_to_quality_dict[definition_id] = QualityNode()