[Bf-blender-cvs] [25f28d348fe] master: Fix T52852: Assert in looptri calculation after recent changes.

Bastien Montagne noreply at git.blender.org
Wed Sep 20 20:48:19 CEST 2017


Commit: 25f28d348fe1322da97c003c79d2d0e6e4267d1d
Author: Bastien Montagne
Date:   Wed Sep 20 20:45:51 2017 +0200
Branches: master
https://developer.blender.org/rB25f28d348fe1322da97c003c79d2d0e6e4267d1d

Fix T52852: Assert in looptri calculation after recent changes.

Wrong condition in asserts...

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

M	source/blender/blenkernel/intern/cdderivedmesh.c
M	source/blender/blenkernel/intern/editderivedmesh.c
M	source/blender/blenkernel/intern/subsurf_ccg.c

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

diff --git a/source/blender/blenkernel/intern/cdderivedmesh.c b/source/blender/blenkernel/intern/cdderivedmesh.c
index 47e1f0beb31..42ca4359a58 100644
--- a/source/blender/blenkernel/intern/cdderivedmesh.c
+++ b/source/blender/blenkernel/intern/cdderivedmesh.c
@@ -1919,7 +1919,7 @@ void CDDM_recalc_looptri(DerivedMesh *dm)
 	const unsigned int totloop = dm->numLoopData;
 
 	DM_ensure_looptri_data(dm);
-	BLI_assert(cddm->dm.looptris.array_wip != NULL);
+	BLI_assert(totpoly == 0 || cddm->dm.looptris.array_wip != NULL);
 
 	BKE_mesh_recalc_looptri(
 	        cddm->mloop, cddm->mpoly,
diff --git a/source/blender/blenkernel/intern/editderivedmesh.c b/source/blender/blenkernel/intern/editderivedmesh.c
index ae4d567edf4..9f688432988 100644
--- a/source/blender/blenkernel/intern/editderivedmesh.c
+++ b/source/blender/blenkernel/intern/editderivedmesh.c
@@ -643,7 +643,7 @@ static void emDM_recalcLoopTri(DerivedMesh *dm)
 	DM_ensure_looptri_data(dm);
 	mlooptri = dm->looptris.array_wip;
 
-	BLI_assert(mlooptri != NULL);
+	BLI_assert(tottri == 0 || mlooptri != NULL);
 	BLI_assert(poly_to_tri_count(dm->numPolyData, dm->numLoopData) == dm->looptris.num);
 	BLI_assert(tottri == dm->looptris.num);
 
diff --git a/source/blender/blenkernel/intern/subsurf_ccg.c b/source/blender/blenkernel/intern/subsurf_ccg.c
index ee1f5dc6696..27bbdf228d4 100644
--- a/source/blender/blenkernel/intern/subsurf_ccg.c
+++ b/source/blender/blenkernel/intern/subsurf_ccg.c
@@ -4484,7 +4484,7 @@ static void ccgDM_recalcLoopTri(DerivedMesh *dm)
 	DM_ensure_looptri_data(dm);
 	mlooptri = dm->looptris.array_wip;
 
-	BLI_assert(mlooptri != NULL);
+	BLI_assert(tottri == 0 || mlooptri != NULL);
 	BLI_assert(poly_to_tri_count(dm->numPolyData, dm->numLoopData) == dm->looptris.num);
 	BLI_assert(tottri == dm->looptris.num);



More information about the Bf-blender-cvs mailing list