From cd38daeff411941e2de3bcd7dd1ddcd2b8a10645 Mon Sep 17 00:00:00 2001 From: Hans Goudey Date: Tue, 6 Jul 2021 21:09:01 -0500 Subject: [PATCH] Fix T89702: Curve to points node assert on single point spline This function could be refactored slightly if we assumed the input was always sorted, but a special for a single point input is also fine. --- source/blender/blenkernel/intern/spline_base.cc | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/blender/blenkernel/intern/spline_base.cc b/source/blender/blenkernel/intern/spline_base.cc index aa0d95d4d61..6234cdf87e2 100644 --- a/source/blender/blenkernel/intern/spline_base.cc +++ b/source/blender/blenkernel/intern/spline_base.cc @@ -512,6 +512,10 @@ void Spline::sample_with_index_factors(const GVArray &src, using T = decltype(dummy); const GVArray_Typed src_typed = src.typed(); MutableSpan dst_typed = dst.typed(); + if (src.size() == 1) { + dst_typed.fill(src_typed[0]); + return; + } blender::threading::parallel_for(dst_typed.index_range(), 1024, [&](IndexRange range) { for (const int i : range) { const LookupResult interp = this->lookup_data_from_index_factor(index_factors[i]);