[Bf-blender-cvs] [fbc36c77b03] master: Fix error with pose & deselect_all with 5e5285baf621a0c225cb5fc06fce

Campbell Barton noreply at git.blender.org
Wed Mar 16 11:26:05 CET 2022


Commit: fbc36c77b03ba31fac1dc936db48d804af804672
Author: Campbell Barton
Date:   Wed Mar 16 21:22:35 2022 +1100
Branches: master
https://developer.blender.org/rBfbc36c77b03ba31fac1dc936db48d804af804672

Fix error with pose & deselect_all with 5e5285baf621a0c225cb5fc06fce

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

M	source/blender/editors/space_view3d/view3d_select.c

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

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. */



More information about the Bf-blender-cvs mailing list