diff options
author | Pedro J. Estébanez <pedrojrulez@gmail.com> | 2023-06-09 13:05:07 +0200 |
---|---|---|
committer | Pedro J. Estébanez <pedrojrulez@gmail.com> | 2023-06-09 13:05:07 +0200 |
commit | 8bbc713ebf40a6e395fac5ecdc654da39ca86d00 (patch) | |
tree | 3ed44111094f61b2dd65db6ed9978f45f663e9ac | |
parent | 828ec2c5d005b6499c7c4c88beaf81767d05614b (diff) | |
download | redot-engine-8bbc713ebf40a6e395fac5ecdc654da39ca86d00.tar.gz |
Fix node idle process priority being ignored
-rw-r--r-- | scene/main/scene_tree.cpp | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/scene/main/scene_tree.cpp b/scene/main/scene_tree.cpp index b18369dd11..7c43368f96 100644 --- a/scene/main/scene_tree.cpp +++ b/scene/main/scene_tree.cpp @@ -905,11 +905,16 @@ void SceneTree::_process_group(ProcessGroup *p_group, bool p_physics) { return; } - bool &node_order_dirty = p_physics ? p_group->physics_node_order_dirty : p_group->node_order_dirty; - - if (node_order_dirty) { - nodes.sort_custom<Node::ComparatorWithPhysicsPriority>(); - node_order_dirty = false; + if (p_physics) { + if (p_group->physics_node_order_dirty) { + nodes.sort_custom<Node::ComparatorWithPhysicsPriority>(); + p_group->physics_node_order_dirty = false; + } + } else { + if (p_group->node_order_dirty) { + nodes.sort_custom<Node::ComparatorWithPriority>(); + p_group->node_order_dirty = false; + } } // Make a copy, so if nodes are added/removed from process, this does not break |