From fbc36c77b03ba31fac1dc936db48d804af804672 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 16 Mar 2022 21:22:35 +1100 Subject: Fix error with pose & deselect_all with 5e5285baf621a0c225cb5fc06fce --- source/blender/editors/space_view3d/view3d_select.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) 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. */ -- cgit v1.2.3