Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'source/blender/blenkernel')
-rw-r--r--source/blender/blenkernel/intern/spline_base.cc10
1 files changed, 6 insertions, 4 deletions
diff --git a/source/blender/blenkernel/intern/spline_base.cc b/source/blender/blenkernel/intern/spline_base.cc
index 807019f60a8..663c1951ba3 100644
--- a/source/blender/blenkernel/intern/spline_base.cc
+++ b/source/blender/blenkernel/intern/spline_base.cc
@@ -142,7 +142,8 @@ void Spline::reverse()
int Spline::evaluated_edges_size() const
{
const int eval_size = this->evaluated_points_size();
- if (eval_size == 1) {
+ if (eval_size < 2) {
+ /* Two points are required for an edge. */
return 0;
}
@@ -205,9 +206,10 @@ Span<float> Spline::evaluated_lengths() const
const int total = evaluated_edges_size();
evaluated_lengths_cache_.resize(total);
-
- Span<float3> positions = this->evaluated_positions();
- accumulate_lengths(positions, is_cyclic_, evaluated_lengths_cache_);
+ if (total != 0) {
+ Span<float3> positions = this->evaluated_positions();
+ accumulate_lengths(positions, is_cyclic_, evaluated_lengths_cache_);
+ }
length_cache_dirty_ = false;
return evaluated_lengths_cache_;