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

Reply via email to