Fix T96085: repeated evaluation of geometry nodes when nothing changed
Differential Revision: https://developer.blender.org/D14216
This commit is contained in:
@@ -465,9 +465,7 @@ bool ED_spreadsheet_context_path_is_active(const bContext *C, SpaceSpreadsheet *
|
||||
if (modifier == nullptr) {
|
||||
return false;
|
||||
}
|
||||
if (!(modifier->flag & eModifierFlag_Active)) {
|
||||
return false;
|
||||
}
|
||||
const bool modifier_is_active = modifier->flag & eModifierFlag_Active;
|
||||
if (modifier->type != eModifierType_Nodes) {
|
||||
return false;
|
||||
}
|
||||
@@ -494,6 +492,12 @@ bool ED_spreadsheet_context_path_is_active(const bContext *C, SpaceSpreadsheet *
|
||||
if (snode->nodetree != root_node_tree) {
|
||||
continue;
|
||||
}
|
||||
if (!modifier_is_active) {
|
||||
if (!(snode->flag & SNODE_PIN)) {
|
||||
/* Node tree has to be pinned when the modifier is not active. */
|
||||
continue;
|
||||
}
|
||||
}
|
||||
if (snode->id != &object->id) {
|
||||
continue;
|
||||
}
|
||||
|
Reference in New Issue
Block a user