Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <campbell@blender.org>2022-03-16 13:22:35 +0300
committerCampbell Barton <campbell@blender.org>2022-03-16 13:25:38 +0300
commitfbc36c77b03ba31fac1dc936db48d804af804672 (patch)
treed1b8a422034d4711621d598b800680f97182485c
parent79ae5f50149a4015624ec8a36c45a72e6d45798a (diff)
Fix error with pose & deselect_all with 5e5285baf621a0c225cb5fc06fce
-rw-r--r--source/blender/editors/space_view3d/view3d_select.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/editors/space_view3d/view3d_select.c b/source/blender/editors/space_view3d/view3d_select.c
index da25c58e1be..25e47f9f6b9 100644
--- a/source/blender/editors/space_view3d/view3d_select.c
+++ b/source/blender/editors/space_view3d/view3d_select.c
@@ -2493,8 +2493,15 @@ static bool ed_object_select_pick(bContext *C,
if (vc.obedit) {
/* Edit-mode, pass. */
}
- else if (is_pose_mode && (basact && (basact->object->mode & OB_MODE_POSE))) {
+ else if (is_pose_mode && (basact == NULL || (basact->object->mode & OB_MODE_POSE))) {
/* Pose-mode, pass (or moved into pose mode). */
+ if (changed == false) {
+ /* Pose selection handles this but it wont run if there are no bones under the cursor. */
+ const bool found = false;
+ if ((params->sel_op == SEL_OP_SET) && (found || params->deselect_all)) {
+ changed |= ED_pose_deselect_all_multi(C, SEL_DESELECT, false);
+ }
+ }
}
else {
/* Object-mode. */