[Bf-blender-cvs] [64e242244d7] blender-v2.83-release: Fix T75993: Mark Seam from UV editor operates on unselected faces
Campbell Barton
noreply at git.blender.org
Tue Apr 28 08:16:14 CEST 2020
Commit: 64e242244d7eb9a30843a2de6caede781b335512
Author: Campbell Barton
Date: Tue Apr 28 16:12:31 2020 +1000
Branches: blender-v2.83-release
https://developer.blender.org/rB64e242244d7eb9a30843a2de6caede781b335512
Fix T75993: Mark Seam from UV editor operates on unselected faces
===================================================================
M source/blender/editors/uvedit/uvedit_ops.c
===================================================================
diff --git a/source/blender/editors/uvedit/uvedit_ops.c b/source/blender/editors/uvedit/uvedit_ops.c
index cb752613cf7..e169222380e 100644
--- a/source/blender/editors/uvedit/uvedit_ops.c
+++ b/source/blender/editors/uvedit/uvedit_ops.c
@@ -5220,6 +5220,8 @@ static void UV_OT_seams_from_islands(wmOperatorType *ot)
static int uv_mark_seam_exec(bContext *C, wmOperator *op)
{
+ SpaceImage *sima = CTX_wm_space_image(C);
+ Image *ima = sima ? sima->image : NULL;
Scene *scene = CTX_data_scene(C);
ViewLayer *view_layer = CTX_data_view_layer(C);
const ToolSettings *ts = scene->toolsettings;
@@ -5250,10 +5252,12 @@ static int uv_mark_seam_exec(bContext *C, wmOperator *op)
const int cd_loop_uv_offset = CustomData_get_offset(&bm->ldata, CD_MLOOPUV);
BM_ITER_MESH (efa, &iter, bm, BM_FACES_OF_MESH) {
- BM_ITER_ELEM (loop, &liter, efa, BM_LOOPS_OF_FACE) {
- if (uvedit_edge_select_test(scene, loop, cd_loop_uv_offset)) {
- BM_elem_flag_set(loop->e, BM_ELEM_SEAM, flag_set);
- changed = true;
+ if (uvedit_face_visible_test(scene, ob, ima, efa)) {
+ BM_ITER_ELEM (loop, &liter, efa, BM_LOOPS_OF_FACE) {
+ if (uvedit_edge_select_test(scene, loop, cd_loop_uv_offset)) {
+ BM_elem_flag_set(loop->e, BM_ELEM_SEAM, flag_set);
+ changed = true;
+ }
}
}
}
More information about the Bf-blender-cvs
mailing list