Commit: 2be8598fe7aceb0ceba1016e775458d0bfdb52b6 Author: Campbell Barton Date: Thu Jan 18 12:36:25 2018 +1100 Branches: master https://developer.blender.org/rB2be8598fe7aceb0ceba1016e775458d0bfdb52b6
Fix T53811: "bmesh.ops.split" crash =================================================================== M source/blender/bmesh/operators/bmo_dupe.c =================================================================== diff --git a/source/blender/bmesh/operators/bmo_dupe.c b/source/blender/bmesh/operators/bmo_dupe.c index e35c1f3b66c..394faabbd25 100644 --- a/source/blender/bmesh/operators/bmo_dupe.c +++ b/source/blender/bmesh/operators/bmo_dupe.c @@ -389,12 +389,10 @@ void bmo_split_exec(BMesh *bm, BMOperator *op) BMOperator *splitop = op; BMOperator dupeop; - BMOperator delop; const bool use_only_faces = BMO_slot_bool_get(op->slots_in, "use_only_faces"); /* initialize our sub-operator */ BMO_op_init(bm, &dupeop, op->flag, "duplicate"); - BMO_op_init(bm, &delop, op->flag, "delete"); BMO_slot_copy(splitop, slots_in, "geom", &dupeop, slots_in, "geom"); @@ -437,24 +435,13 @@ void bmo_split_exec(BMesh *bm, BMOperator *op) } /* connect outputs of dupe to delete, exluding keep geometry */ - BMO_slot_int_set(delop.slots_in, "context", DEL_FACES); - BMO_slot_buffer_from_enabled_flag(bm, &delop, delop.slots_in, "geom", BM_ALL_NOLOOP, SPLIT_INPUT); - - BMO_op_exec(bm, &delop); + BMO_mesh_delete_oflag_context(bm, SPLIT_INPUT, DEL_FACES); /* now we make our outputs by copying the dupe output */ BMO_slot_copy(&dupeop, slots_out, "geom.out", splitop, slots_out, "geom.out"); - BMO_slot_copy(&dupeop, slots_out, "boundary_map.out", - splitop, slots_out, "boundary_map.out"); - - BMO_slot_copy(&dupeop, slots_out, "isovert_map.out", - splitop, slots_out, "isovert_map.out"); - - /* cleanup */ - BMO_op_finish(bm, &delop); BMO_op_finish(bm, &dupeop); #undef SPLIT_INPUT _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs