[Bf-blender-cvs] [81673f5ab7f] blender2.8: Fix T54712: Undo w/ multi-edit failed

Campbell Barton noreply at git.blender.org
Thu Apr 19 09:02:53 CEST 2018


Commit: 81673f5ab7f4d404b9b263bac88e8b271b0ccdac
Author: Campbell Barton
Date:   Thu Apr 19 08:58:49 2018 +0200
Branches: blender2.8
https://developer.blender.org/rB81673f5ab7f4d404b9b263bac88e8b271b0ccdac

Fix T54712: Undo w/ multi-edit failed

===================================================================

M	source/blender/blenkernel/intern/object.c
M	source/blender/editors/object/object_edit.c

===================================================================

diff --git a/source/blender/blenkernel/intern/object.c b/source/blender/blenkernel/intern/object.c
index addf84224ac..53ca20e3c2a 100644
--- a/source/blender/blenkernel/intern/object.c
+++ b/source/blender/blenkernel/intern/object.c
@@ -511,7 +511,7 @@ bool BKE_object_is_in_editmode(const Object *ob)
 
 bool BKE_object_is_in_editmode_and_selected(const Object *ob)
 {
-	if ((ob->flag & SELECT) && (BKE_object_is_in_editmode(ob))) {
+	if ((ob->base_flag & BASE_SELECTED) && (BKE_object_is_in_editmode(ob))) {
 		return true;
 	}
 	return false;
diff --git a/source/blender/editors/object/object_edit.c b/source/blender/editors/object/object_edit.c
index 248501a7baf..2550c4006f2 100644
--- a/source/blender/editors/object/object_edit.c
+++ b/source/blender/editors/object/object_edit.c
@@ -468,9 +468,7 @@ static int editmode_toggle_exec(bContext *C, wmOperator *op)
 			FOREACH_SELECTED_OBJECT_BEGIN(view_layer, ob)
 			{
 				if ((ob != obact) && (ob->type == obact->type)) {
-					if (ob->flag & SELECT) {
-						ED_object_editmode_enter_ex(scene, ob, EM_WAITCURSOR | EM_NO_CONTEXT);
-					}
+					ED_object_editmode_enter_ex(scene, ob, EM_WAITCURSOR | EM_NO_CONTEXT);
 				}
 			}
 			FOREACH_SELECTED_OBJECT_END;
@@ -482,9 +480,7 @@ static int editmode_toggle_exec(bContext *C, wmOperator *op)
 			FOREACH_SELECTED_OBJECT_BEGIN(view_layer, ob)
 			{
 				if ((ob != obact) && (ob->type == obact->type)) {
-					if (ob->flag & SELECT) {
-						ED_object_editmode_exit_ex(NULL, scene, ob, EM_FREEDATA | EM_WAITCURSOR);
-					}
+					ED_object_editmode_exit_ex(NULL, scene, ob, EM_FREEDATA | EM_WAITCURSOR);
 				}
 			}
 			FOREACH_SELECTED_OBJECT_END;
@@ -560,9 +556,7 @@ static int posemode_exec(bContext *C, wmOperator *op)
 					    (ob->type == OB_ARMATURE) &&
 					    (ob->mode & mode_flag))
 					{
-						if (ob->flag & SELECT) {
-							ED_object_posemode_exit_ex(bmain, ob);
-						}
+						ED_object_posemode_exit_ex(bmain, ob);
 					}
 				}
 				FOREACH_SELECTED_OBJECT_END;
@@ -580,9 +574,7 @@ static int posemode_exec(bContext *C, wmOperator *op)
 					    (ob->mode == OB_MODE_OBJECT) &&
 					    (!ID_IS_LINKED(ob)))
 					{
-						if (ob->flag & SELECT) {
-							ED_object_posemode_enter_ex(bmain, ob);
-						}
+						ED_object_posemode_enter_ex(bmain, ob);
 					}
 				}
 				FOREACH_SELECTED_OBJECT_END;



More information about the Bf-blender-cvs mailing list