[Bf-blender-cvs] [164f40c50a0] blender-v2.90-release: Fix T79503: Selecting edit-bones while holding Ctrl crashes

Campbell Barton noreply at git.blender.org
Tue Aug 4 13:25:16 CEST 2020


Commit: 164f40c50a05ad4e1696cdd0f55de96c210a125a
Author: Campbell Barton
Date:   Tue Aug 4 21:23:01 2020 +1000
Branches: blender-v2.90-release
https://developer.blender.org/rB164f40c50a05ad4e1696cdd0f55de96c210a125a

Fix T79503: Selecting edit-bones while holding Ctrl crashes

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

M	source/blender/draw/intern/draw_manager.c
M	source/blender/editors/space_view3d/view3d_select.c

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

diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index 712a93e8880..cea5dea6029 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -1960,7 +1960,7 @@ void DRW_render_instance_buffer_finish(void)
 void DRW_draw_select_loop(struct Depsgraph *depsgraph,
                           ARegion *region,
                           View3D *v3d,
-                          bool UNUSED(use_obedit_skip),
+                          bool use_obedit_skip,
                           bool draw_surface,
                           bool UNUSED(use_nearest),
                           const rcti *rect,
@@ -1973,7 +1973,7 @@ void DRW_draw_select_loop(struct Depsgraph *depsgraph,
   RenderEngineType *engine_type = ED_view3d_engine_type(scene, v3d->shading.type);
   ViewLayer *view_layer = DEG_get_evaluated_view_layer(depsgraph);
   Object *obact = OBACT(view_layer);
-  Object *obedit = OBEDIT_FROM_OBACT(obact);
+  Object *obedit = use_obedit_skip ? NULL : OBEDIT_FROM_OBACT(obact);
 #ifndef USE_GPU_SELECT
   UNUSED_VARS(scene, view_layer, v3d, region, rect);
 #else
diff --git a/source/blender/editors/space_view3d/view3d_select.c b/source/blender/editors/space_view3d/view3d_select.c
index fc763d91e3d..64447015bdc 100644
--- a/source/blender/editors/space_view3d/view3d_select.c
+++ b/source/blender/editors/space_view3d/view3d_select.c
@@ -2113,7 +2113,7 @@ static bool ed_object_select_pick(bContext *C,
 
     if (hits > 0) {
       /* note: bundles are handling in the same way as bones */
-      const bool has_bones = selectbuffer_has_bones(buffer, hits);
+      const bool has_bones = object ? false : selectbuffer_has_bones(buffer, hits);
 
       /* note; shift+alt goes to group-flush-selecting */
       if (enumerate) {



More information about the Bf-blender-cvs mailing list