[Bf-blender-cvs] [89d0cc3a0ce] master: Fix T88719: Attribute Remove node input field does nothing

Jacques Lucke noreply at git.blender.org
Tue Jun 8 11:51:59 CEST 2021


Commit: 89d0cc3a0ce013f4a68d8858d4ed9792bd23b43b
Author: Jacques Lucke
Date:   Tue Jun 8 11:50:18 2021 +0200
Branches: master
https://developer.blender.org/rB89d0cc3a0ce013f4a68d8858d4ed9792bd23b43b

Fix T88719: Attribute Remove node input field does nothing

An unlinked multi-input socket was not handled correctly.

===================================================================

M	source/blender/modifiers/intern/MOD_nodes_evaluator.cc

===================================================================

diff --git a/source/blender/modifiers/intern/MOD_nodes_evaluator.cc b/source/blender/modifiers/intern/MOD_nodes_evaluator.cc
index 27d3da911a1..7f80afde99b 100644
--- a/source/blender/modifiers/intern/MOD_nodes_evaluator.cc
+++ b/source/blender/modifiers/intern/MOD_nodes_evaluator.cc
@@ -1474,6 +1474,13 @@ Vector<GMutablePointer> NodeParamsProvider::extract_multi_input(StringRef identi
     }
     BLI_assert_unreachable();
   });
+  if (ret_values.is_empty()) {
+    /* If the socket is not linked, we just use the value from the socket itself. */
+    BLI_assert(multi_value.items.size() == 1);
+    MultiInputValueItem &item = multi_value.items[0];
+    BLI_assert(item.origin == socket);
+    ret_values.append({*input_state.type, item.value});
+  }
   multi_value.items.clear();
   return ret_values;
 }



More information about the Bf-blender-cvs mailing list