[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [53061] trunk/blender/source/blender/bmesh /tools/bmesh_bevel.c: fix own error [#33529] Bevel on a certain edgeloop results in segmentation fault

Campbell Barton ideasman42 at gmail.com
Sun Dec 16 15:17:20 CET 2012


Revision: 53061
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=53061
Author:   campbellbarton
Date:     2012-12-16 14:17:15 +0000 (Sun, 16 Dec 2012)
Log Message:
-----------
fix own error [#33529] Bevel on a certain edgeloop results in segmentation fault
relied on edges having a loop, now use overlap apiflag instead.

Modified Paths:
--------------
    trunk/blender/source/blender/bmesh/tools/bmesh_bevel.c

Modified: trunk/blender/source/blender/bmesh/tools/bmesh_bevel.c
===================================================================
--- trunk/blender/source/blender/bmesh/tools/bmesh_bevel.c	2012-12-16 13:31:56 UTC (rev 53060)
+++ trunk/blender/source/blender/bmesh/tools/bmesh_bevel.c	2012-12-16 14:17:15 UTC (rev 53061)
@@ -37,6 +37,7 @@
 #include "BKE_customdata.h"
 
 #include "bmesh.h"
+#include "./intern/bmesh_private.h"
 
 
 
@@ -1475,9 +1476,9 @@
 }
 
 /* take care, this flag isn't cleared before use, it just so happens that its not set */
-#define BM_BEVEL_EDGE_TAG_ENABLE(bme)  BM_elem_flag_enable(  (bme)->l, BM_ELEM_TAG)
-#define BM_BEVEL_EDGE_TAG_DISABLE(bme) BM_elem_flag_disable( (bme)->l, BM_ELEM_TAG)
-#define BM_BEVEL_EDGE_TAG_TEST(bme)    BM_elem_flag_test(    (bme)->l, BM_ELEM_TAG)
+#define BM_BEVEL_EDGE_TAG_ENABLE(bme)  BM_ELEM_API_FLAG_ENABLE(  (bme), _FLAG_OVERLAP)
+#define BM_BEVEL_EDGE_TAG_DISABLE(bme) BM_ELEM_API_FLAG_DISABLE( (bme), _FLAG_OVERLAP)
+#define BM_BEVEL_EDGE_TAG_TEST(bme)    BM_ELEM_API_FLAG_TEST(    (bme), _FLAG_OVERLAP)
 
 /*
  * Construction around the vertex
@@ -1504,6 +1505,8 @@
 			nsel++;
 		}
 		ntot++;
+
+		BM_BEVEL_EDGE_TAG_DISABLE(bme);
 	}
 
 	if (nsel == 0) {




More information about the Bf-blender-cvs mailing list