Commit: 3e1fd2682807c31b62168737c953a6b4ea33ce77
Author: Hans Goudey
Date:   Fri Oct 22 16:39:39 2021 -0500
Branches: master
https://developer.blender.org/rB3e1fd2682807c31b62168737c953a6b4ea33ce77

Fix: Assert for unused field evaluator in resample curve node

Declare it at a lower scope so it doesn't go unused in evaluated mode.

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

M       source/blender/nodes/geometry/nodes/node_geo_curve_resample.cc

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

diff --git a/source/blender/nodes/geometry/nodes/node_geo_curve_resample.cc 
b/source/blender/nodes/geometry/nodes/node_geo_curve_resample.cc
index 3db18992c93..2617b2f6646 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_curve_resample.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_curve_resample.cc
@@ -171,8 +171,6 @@ static std::unique_ptr<CurveEval> resample_curve(const 
CurveComponent *component
   GeometryComponentFieldContext field_context{*component, ATTR_DOMAIN_CURVE};
   const int domain_size = component->attribute_domain_size(ATTR_DOMAIN_CURVE);
 
-  fn::FieldEvaluator evaluator{field_context, domain_size};
-
   Span<SplinePtr> input_splines = input_curve->splines();
 
   std::unique_ptr<CurveEval> output_curve = std::make_unique<CurveEval>();
@@ -180,6 +178,7 @@ static std::unique_ptr<CurveEval> resample_curve(const 
CurveComponent *component
   MutableSpan<SplinePtr> output_splines = output_curve->splines();
 
   if (mode_param.mode == GEO_NODE_CURVE_RESAMPLE_COUNT) {
+    fn::FieldEvaluator evaluator{field_context, domain_size};
     evaluator.add(*mode_param.count);
     evaluator.evaluate();
     const VArray<int> &cuts = evaluator.get_evaluated<int>(0);
@@ -192,6 +191,7 @@ static std::unique_ptr<CurveEval> resample_curve(const 
CurveComponent *component
     });
   }
   else if (mode_param.mode == GEO_NODE_CURVE_RESAMPLE_LENGTH) {
+    fn::FieldEvaluator evaluator{field_context, domain_size};
     evaluator.add(*mode_param.length);
     evaluator.evaluate();
     const VArray<float> &lengths = evaluator.get_evaluated<float>(0);

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
List details, subscription details or unsubscribe:
https://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to