diff options
author | Campbell Barton <ideasman42@gmail.com> | 2014-08-25 10:48:47 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2014-08-25 10:57:38 +0400 |
commit | ca1bca442ab3ae6ab4332a24a784a1c79bde4e27 (patch) | |
tree | b67221277ced8aca98d8659e00542b9d93f89ef5 /source/blender/bmesh/intern/bmesh_operators.c | |
parent | 470e694652a28d20d31e001240fdb9727a6d1480 (diff) |
Fix T40993: Store selection history for extrude
Diffstat (limited to 'source/blender/bmesh/intern/bmesh_operators.c')
-rw-r--r-- | source/blender/bmesh/intern/bmesh_operators.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/source/blender/bmesh/intern/bmesh_operators.c b/source/blender/bmesh/intern/bmesh_operators.c index 7f872613896..6bca5ca7a43 100644 --- a/source/blender/bmesh/intern/bmesh_operators.c +++ b/source/blender/bmesh/intern/bmesh_operators.c @@ -605,7 +605,8 @@ void BMO_mesh_flag_disable_all(BMesh *bm, BMOperator *UNUSED(op), const char hty void BMO_mesh_selected_remap(BMesh *bm, BMOpSlot *slot_vert_map, BMOpSlot *slot_edge_map, - BMOpSlot *slot_face_map) + BMOpSlot *slot_face_map, + const bool check_select) { if (bm->selected.first) { BMEditSelection *ese, *ese_next; @@ -623,7 +624,7 @@ void BMO_mesh_selected_remap(BMesh *bm, ese->ele = BMO_slot_map_elem_get(slot_elem_map, ese->ele); if (UNLIKELY((ese->ele == NULL) || - (BM_elem_flag_test(ese->ele, BM_ELEM_SELECT) == false))) + (check_select && (BM_elem_flag_test(ese->ele, BM_ELEM_SELECT) == false)))) { BLI_remlink(&bm->selected, ese); MEM_freeN(ese); |