From f9c59c7e1ebad7177984471c63a3c7c0ff7f6ecc Mon Sep 17 00:00:00 2001 From: Ruben D Date: Thu, 30 Nov 2017 00:33:10 +0100 Subject: [PATCH] Don't update model if extruders haven't all been loaded yet This model is created while the extruder stacks have not yet been filled in. You can't connect yet. When the extruder is ready, _extrudersChanged will be called again and then the new extruder will also get connected. Contributes to issue CURA-4243. --- cura/Settings/ExtrudersModel.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/cura/Settings/ExtrudersModel.py b/cura/Settings/ExtrudersModel.py index 40d13461cc..48517c4a7b 100644 --- a/cura/Settings/ExtrudersModel.py +++ b/cura/Settings/ExtrudersModel.py @@ -142,6 +142,8 @@ class ExtrudersModel(UM.Qt.ListModel.ListModel): self._active_machine_extruders = [] extruder_manager = ExtruderManager.getInstance() for extruder in extruder_manager.getExtruderStacks(): + if extruder is None: #This extruder wasn't loaded yet. This happens asynchronously while this model is constructed from QML. + continue extruder.containersChanged.connect(self._onExtruderStackContainersChanged) self._active_machine_extruders.append(extruder)