Commit: 128aa7f3b09802f325c151a921ac50c01c04b6e1
Author: Johnny Matthews
Date:   Mon Jun 6 11:10:27 2022 -0500
Branches: blender-v3.2-release
https://developer.blender.org/rB128aa7f3b09802f325c151a921ac50c01c04b6e1

Geometry Nodes: Fix Assert in Duplicate Elements

The original assert did not take into account the offset size in the loop being 
-1. The tests were then run in non-debug mode, so while the mesh regressions 
still passed, the false positive asserts that happened were not caught.

Differential Revision: https://developer.blender.org/D15136

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

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

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

diff --git a/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc 
b/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc
index 4730109f3e3..555bb689582 100644
--- a/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc
+++ b/source/blender/nodes/geometry/nodes/node_geo_duplicate_elements.cc
@@ -98,7 +98,7 @@ static void threaded_slice_fill(Span<int> offsets,
                                 MutableSpan<T> dst)
 {
   BLI_assert(offsets.last() == dst.size());
-  BLI_assert(selection.size() == offsets.size());
+  BLI_assert(selection.size() == offsets.size() - 1);
   threading::parallel_for(IndexRange(offsets.size() - 1), 512, [&](IndexRange 
range) {
     for (const int i : range) {
       dst.slice(range_for_offsets_index(offsets, i)).fill(src[selection[i]]);

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

Reply via email to