diff options
author | Campbell Barton <ideasman42@gmail.com> | 2014-06-28 23:06:22 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2014-06-28 23:57:48 +0400 |
commit | f32079d4b9f0ee565dc4bb63a4ef25286f183d0e (patch) | |
tree | 10d24971269b58ebb42a35e3006bde9f5e21db5b /source/blender/bmesh/operators | |
parent | 00c8a691e921e5e838b96e92290bd9901e1bf3c4 (diff) |
BLI_stackdefines
Bounds check the stack while debugging, also add STACK_PEEK
Diffstat (limited to 'source/blender/bmesh/operators')
4 files changed, 7 insertions, 7 deletions
diff --git a/source/blender/bmesh/operators/bmo_bisect_plane.c b/source/blender/bmesh/operators/bmo_bisect_plane.c index 378cf405e16..bed1ea5cb94 100644 --- a/source/blender/bmesh/operators/bmo_bisect_plane.c +++ b/source/blender/bmesh/operators/bmo_bisect_plane.c @@ -90,7 +90,7 @@ void bmo_bisect_plane_exec(BMesh *bm, BMOperator *op) plane_outer[3] = plane[3] - dist; plane_inner[3] = plane[3] + dist; - STACK_INIT(vert_arr); + STACK_INIT(vert_arr, vert_arr_max); BMO_ITER (v, &siter, op->slots_in, "geom", BM_VERT) { if ((clear_outer && plane_point_side_v3(plane_outer, v->co) > 0.0f) || diff --git a/source/blender/bmesh/operators/bmo_connect.c b/source/blender/bmesh/operators/bmo_connect.c index 8b0033a9342..4cf6e82fc8e 100644 --- a/source/blender/bmesh/operators/bmo_connect.c +++ b/source/blender/bmesh/operators/bmo_connect.c @@ -52,8 +52,8 @@ static int bm_face_connect_verts(BMesh *bm, BMFace *f, const bool check_degenera BMLoop *l_last; unsigned int i; - STACK_INIT(loops_split); - STACK_INIT(verts_pair); + STACK_INIT(loops_split, f->len); + STACK_INIT(verts_pair, f->len); l_last = NULL; BM_ITER_ELEM (l, &liter, f, BM_LOOPS_OF_FACE) { diff --git a/source/blender/bmesh/operators/bmo_removedoubles.c b/source/blender/bmesh/operators/bmo_removedoubles.c index a17ab2133c1..814649c7dbf 100644 --- a/source/blender/bmesh/operators/bmo_removedoubles.c +++ b/source/blender/bmesh/operators/bmo_removedoubles.c @@ -92,8 +92,8 @@ static void remdoubles_createface(BMesh *bm, BMFace *f, BMOpSlot *slot_targetmap STACK_DECLARE(edges); STACK_DECLARE(loops); - STACK_INIT(edges); - STACK_INIT(loops); + STACK_INIT(edges, f->len); + STACK_INIT(loops, f->len); BM_ITER_ELEM (l, &liter, f, BM_LOOPS_OF_FACE) { BMVert *v1 = l->v; diff --git a/source/blender/bmesh/operators/bmo_subdivide_edgering.c b/source/blender/bmesh/operators/bmo_subdivide_edgering.c index ae1ff5a7389..e13a9df4474 100644 --- a/source/blender/bmesh/operators/bmo_subdivide_edgering.c +++ b/source/blender/bmesh/operators/bmo_subdivide_edgering.c @@ -970,8 +970,8 @@ static void bm_edgering_pair_subdiv(BMesh *bm, BMEdge *e; BMFace *f; - STACK_INIT(edges_ring_arr); - STACK_INIT(faces_ring_arr); + STACK_INIT(edges_ring_arr, stack_max); + STACK_INIT(faces_ring_arr, stack_max); bm_edgeloop_vert_tag(el_store_a, false); bm_edgeloop_vert_tag(el_store_b, true); |