From 9c9eb03d7840471173964b0f2758e2053bb700b4 Mon Sep 17 00:00:00 2001 From: Germano Cavalcante Date: Sun, 12 Jul 2020 21:47:50 -0300 Subject: Fix T78855: Knife tool crashes when the geometry has no face I don't see the need for a BVH Tree to have root but not have leafs. But apparently this case is possible. --- source/blender/blenlib/intern/BLI_kdopbvh.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'source/blender/blenlib') diff --git a/source/blender/blenlib/intern/BLI_kdopbvh.c b/source/blender/blenlib/intern/BLI_kdopbvh.c index e9946d81f75..a3f93ccc753 100644 --- a/source/blender/blenlib/intern/BLI_kdopbvh.c +++ b/source/blender/blenlib/intern/BLI_kdopbvh.c @@ -1441,13 +1441,13 @@ int *BLI_bvhtree_intersect_plane(BVHTree *tree, float plane[4], uint *r_intersec int *intersect = NULL; size_t total = 0; - BVHNode *root = tree->nodes[tree->totleaf]; - if (root != NULL) { + if (tree->totleaf) { BVHIntersectPlaneData data; data.tree = tree; copy_v4_v4(data.plane, plane); data.intersect = BLI_stack_new(sizeof(int), __func__); + BVHNode *root = tree->nodes[tree->totleaf]; bvhtree_intersect_plane_dfs_recursive(&data, root); total = BLI_stack_count(data.intersect); -- cgit v1.2.3