From 9e939a614ec5cda5dd6e5392bf9c209d21127c33 Mon Sep 17 00:00:00 2001 From: Hans Goudey Date: Mon, 20 Sep 2021 20:22:52 -0500 Subject: Functions: Fix incorrect assert for unused output Since the variable for an output parameter can be null, it is incorrect to use it later on in a reference. --- source/blender/functions/intern/multi_function_procedure.cc | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'source/blender/functions') diff --git a/source/blender/functions/intern/multi_function_procedure.cc b/source/blender/functions/intern/multi_function_procedure.cc index fa95e8de71e..986c5dff0c4 100644 --- a/source/blender/functions/intern/multi_function_procedure.cc +++ b/source/blender/functions/intern/multi_function_procedure.cc @@ -419,6 +419,10 @@ bool MFProcedure::validate_initialization() const const MultiFunction &fn = *instruction->fn_; for (const int param_index : fn.param_indices()) { const MFParamType param_type = fn.param_type(param_index); + /* If the parameter was an unneeded output, it could be null. */ + if (!instruction->params_[param_index]) { + continue; + } const MFVariable &variable = *instruction->params_[param_index]; const InitState state = this->find_initialization_state_before_instruction(*instruction, variable); -- cgit v1.2.3