[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [61166] trunk/blender/source/blender/ editors/mesh/editmesh_knife.c: Fix knife bug exposed by valgrind.

Howard Trickey howard.trickey at gmail.com
Wed Nov 6 16:27:19 CET 2013


Revision: 61166
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=61166
Author:   howardt
Date:     2013-11-06 15:27:19 +0000 (Wed, 06 Nov 2013)
Log Message:
-----------
Fix knife bug exposed by valgrind.
Was reading cage coordinate from those of existing
BMVerts even for newly created verts that don't
have cage coordinates there.

Modified Paths:
--------------
    trunk/blender/source/blender/editors/mesh/editmesh_knife.c

Modified: trunk/blender/source/blender/editors/mesh/editmesh_knife.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/editmesh_knife.c	2013-11-06 14:03:51 UTC (rev 61165)
+++ trunk/blender/source/blender/editors/mesh/editmesh_knife.c	2013-11-06 15:27:19 UTC (rev 61166)
@@ -348,12 +348,17 @@
 static KnifeVert *get_bm_knife_vert(KnifeTool_OpData *kcd, BMVert *v)
 {
 	KnifeVert *kfv = BLI_ghash_lookup(kcd->origvertmap, v);
+	const float *cageco;
 
 	if (!kfv) {
 		BMIter bmiter;
 		BMFace *f;
 
-		kfv = new_knife_vert(kcd, v->co, kcd->cagecos[BM_elem_index_get(v)]);
+		if (BM_elem_index_get(v) >= 0)
+			cageco = kcd->cagecos[BM_elem_index_get(v)];
+		else
+			cageco = v->co;
+		kfv = new_knife_vert(kcd, v->co, cageco);
 		kfv->v = v;
 		BLI_ghash_insert(kcd->origvertmap, v, kfv);
 		BM_ITER_ELEM (f, &bmiter, v, BM_FACES_OF_VERT) {




More information about the Bf-blender-cvs mailing list