[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [50086] trunk/blender/source/blender/bmesh /operators/bmo_extrude.c: Fix #32341: extrude with a mirror modifier could lead to orphan vertices, it

Brecht Van Lommel brechtvanlommel at pandora.be
Tue Aug 21 16:38:03 CEST 2012


Revision: 50086
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=50086
Author:   blendix
Date:     2012-08-21 14:38:03 +0000 (Tue, 21 Aug 2012)
Log Message:
-----------
Fix #32341: extrude with a mirror modifier could lead to orphan vertices, it
was already removing unnecessary edges, just not vertices of those edges.

Modified Paths:
--------------
    trunk/blender/source/blender/bmesh/operators/bmo_extrude.c

Modified: trunk/blender/source/blender/bmesh/operators/bmo_extrude.c
===================================================================
--- trunk/blender/source/blender/bmesh/operators/bmo_extrude.c	2012-08-21 13:19:34 UTC (rev 50085)
+++ trunk/blender/source/blender/bmesh/operators/bmo_extrude.c	2012-08-21 14:38:03 UTC (rev 50086)
@@ -380,10 +380,18 @@
 
 		/* this should always be wire, so this is mainly a speedup to avoid map lookup */
 		if (BM_edge_is_wire(e) && BMO_slot_map_contains(bm, op, "exclude", e)) {
+			BMVert *v1 = e->v1, *v2 = e->v2;
+
 			/* The original edge was excluded,
 			 * this would result in a standalone wire edge - see [#30399] */
 			BM_edge_kill(bm, e);
 
+			/* kill standalone vertices from this edge - see [#32341] */
+			if (!v1->e)
+				BM_vert_kill(bm, v1);
+			if (!v2->e)
+				BM_vert_kill(bm, v1);
+
 			continue;
 		}
 




More information about the Bf-blender-cvs mailing list