[Bf-blender-cvs] [3d7b6b6] fracture_modifier: crash fix attempt for connected fm objects

Martin Felke noreply at git.blender.org
Mon Dec 12 20:43:58 CET 2016


Commit: 3d7b6b6b345b18271e4ae3d0012f788294d4984f
Author: Martin Felke
Date:   Mon Dec 12 20:43:36 2016 +0100
Branches: fracture_modifier
https://developer.blender.org/rB3d7b6b6b345b18271e4ae3d0012f788294d4984f

crash fix attempt for connected fm objects

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

M	source/blender/blenkernel/intern/rigidbody.c

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

diff --git a/source/blender/blenkernel/intern/rigidbody.c b/source/blender/blenkernel/intern/rigidbody.c
index dbd1da9..f9f327e 100644
--- a/source/blender/blenkernel/intern/rigidbody.c
+++ b/source/blender/blenkernel/intern/rigidbody.c
@@ -1448,18 +1448,15 @@ static MeshIsland* find_closest_meshisland_to_point(FractureModifierData* fmd, O
 	KDTreeNearest *n;
 	int count = 0;
 	int con_count = 0;
-	int index = 0, con_index = 0;
+	int index = 0;
 	float loc[3];
 	int i = 0, j = 0;
 	RigidBodyCon **cons = NULL;
 
 	count = BLI_listbase_count(&fmd->meshIslands);
-	n = MEM_mallocN(sizeof(KDTreeNearest) * con_count, "n nearest find_closest_meshisland");
-
 	tree = BLI_kdtree_new(count);
 	mi_array = MEM_mallocN(sizeof(MeshIsland*) * count, "mi_array find_closest_meshisland");
 
-
 	for (mi = fmd->meshIslands.first; mi; mi = mi->next) {
 		mul_v3_m4v3(loc, ob->obmat, mi->centroid);
 		BLI_kdtree_insert(tree, i, loc);
@@ -1470,6 +1467,8 @@ static MeshIsland* find_closest_meshisland_to_point(FractureModifierData* fmd, O
 	BLI_kdtree_balance(tree);
 
 	con_count = connected_island_cons(rbw, ob, &cons);
+	n = MEM_mallocN(sizeof(KDTreeNearest) * con_count, "n nearest find_closest_meshisland");
+
 	BLI_kdtree_find_nearest_n(tree, ob2->loc, n, con_count);
 
 	for (j = 0; j < con_count; j++) {




More information about the Bf-blender-cvs mailing list