[Bf-blender-cvs] [9e939a614ec] master: Functions: Fix incorrect assert for unused output

Hans Goudey noreply at git.blender.org
Tue Sep 21 03:23:05 CEST 2021


Commit: 9e939a614ec5cda5dd6e5392bf9c209d21127c33
Author: Hans Goudey
Date:   Mon Sep 20 20:22:52 2021 -0500
Branches: master
https://developer.blender.org/rB9e939a614ec5cda5dd6e5392bf9c209d21127c33

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.

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

M	source/blender/functions/intern/multi_function_procedure.cc

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

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);



More information about the Bf-blender-cvs mailing list