From 584e1b6abbb8fe239d32152238e0eac4c2319cc9 Mon Sep 17 00:00:00 2001 From: Ghostkeeper Date: Mon, 7 Aug 2017 09:45:16 +0200 Subject: [PATCH] Set the next stack before adding the user container Since the user container may trigger a propertyChanged signal, which then requests the next stack. Contributes to issue CURA-4121. --- cura/Settings/CuraStackBuilder.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/cura/Settings/CuraStackBuilder.py b/cura/Settings/CuraStackBuilder.py index a15797cf7f..f436fffa01 100644 --- a/cura/Settings/CuraStackBuilder.py +++ b/cura/Settings/CuraStackBuilder.py @@ -76,6 +76,8 @@ class CuraStackBuilder: stack.setName(definition.getName()) stack.setDefinition(definition) stack.addMetaDataEntry("position", definition.getMetaDataEntry("position")) + if "next_stack" in kwargs: #Add stacks before containers are added, since they may trigger a setting update. + stack.setNextStack(kwargs["next_stack"]) user_container = InstanceContainer(new_stack_id + "_user") user_container.addMetaDataEntry("type", "user") @@ -86,9 +88,6 @@ class CuraStackBuilder: stack.setUserChanges(user_container) - if "next_stack" in kwargs: - stack.setNextStack(kwargs["next_stack"]) - # Important! The order here matters, because that allows the stack to # assume the material and variant have already been set. if "definition_changes" in kwargs: