From 9773a16bc61e34863aed2c68025bbf3310186ba2 Mon Sep 17 00:00:00 2001 From: Arjen Hiemstra Date: Tue, 2 Aug 2016 11:33:23 +0200 Subject: [PATCH] Properly set active extruder when deepcopying SettingOverrideDecorator Fixes CURA-2022 --- cura/Settings/SettingOverrideDecorator.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/cura/Settings/SettingOverrideDecorator.py b/cura/Settings/SettingOverrideDecorator.py index f1e34a939a..183d84d2f4 100644 --- a/cura/Settings/SettingOverrideDecorator.py +++ b/cura/Settings/SettingOverrideDecorator.py @@ -37,10 +37,15 @@ class SettingOverrideDecorator(SceneNodeDecorator): self._updateNextStack() def __deepcopy__(self, memo): + print("deepcopy settingoverridedecorator") ## Create a fresh decorator object deep_copy = SettingOverrideDecorator() ## Copy the instance deep_copy._instance = copy.deepcopy(self._instance, memo) + + # Properly set the right extruder on the copy + deep_copy.setActiveExtruder(self._extruder_stack) + ## Set the copied instance as the first (and only) instance container of the stack. deep_copy._stack.replaceContainer(0, deep_copy._instance) return deep_copy