[Bf-blender-cvs] [020a420] master: Dyntopo: verify had over zealous asserts

Campbell Barton noreply at git.blender.org
Tue Jul 5 19:47:10 CEST 2016


Commit: 020a420fe35e1b5b513780927b7f20107413e7c3
Author: Campbell Barton
Date:   Tue Jul 5 16:19:19 2016 +1000
Branches: master
https://developer.blender.org/rB020a420fe35e1b5b513780927b7f20107413e7c3

Dyntopo: verify had over zealous asserts

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

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

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

diff --git a/source/blender/blenkernel/intern/pbvh_bmesh.c b/source/blender/blenkernel/intern/pbvh_bmesh.c
index 87d22d0..d936b4e 100644
--- a/source/blender/blenkernel/intern/pbvh_bmesh.c
+++ b/source/blender/blenkernel/intern/pbvh_bmesh.c
@@ -1914,6 +1914,7 @@ static void pbvh_bmesh_verify(PBVH *bvh)
 	{
 		BMFace *f;
 		BM_ITER_MESH(f, &iter, bvh->bm, BM_FACES_OF_MESH) {
+			BLI_assert(BM_ELEM_CD_GET_INT(f, bvh->cd_face_node_offset) != DYNTOPO_NODE_NONE);
 			BLI_gset_insert(faces_all, f);
 		}
 	}
@@ -1998,14 +1999,14 @@ static void pbvh_bmesh_verify(PBVH *bvh)
 			 * adjacent faces */
 			bool found = false;
 			BMIter bm_iter;
-			BMFace *f;
+			BMFace *f = NULL;
 			BM_ITER_ELEM (f, &bm_iter, v, BM_FACES_OF_VERT) {
 				if (pbvh_bmesh_node_lookup(bvh, f) == n) {
 					found = true;
 					break;
 				}
 			}
-			BLI_assert(found);
+			BLI_assert(found || f == NULL);
 
 #if 1
 			/* total freak stuff, check if node exists somewhere else */
@@ -2061,7 +2062,8 @@ static void pbvh_bmesh_verify(PBVH *bvh)
 
 			GSET_ITER (gs_iter, n->bm_other_verts) {
 				BMVert *v = BLI_gsetIterator_getKey(&gs_iter);
-				BLI_assert(!BM_vert_face_check(v));
+				/* this happens sometimes and seems harmless */
+				// BLI_assert(!BM_vert_face_check(v));
 				BLI_assert(BLI_gset_haskey(verts_all, v));
 			}
 		}




More information about the Bf-blender-cvs mailing list