[Bf-blender-cvs] [85f9d319a40] master: Fix T83293: crash when selecting bone

Jacques Lucke noreply at git.blender.org
Wed Dec 2 15:34:04 CET 2020


Commit: 85f9d319a409f26a4ca29d780de6a529794dc13e
Author: Jacques Lucke
Date:   Wed Dec 2 15:33:22 2020 +0100
Branches: master
https://developer.blender.org/rB85f9d319a409f26a4ca29d780de6a529794dc13e

Fix T83293: crash when selecting bone

This partially reverts rBe922dd7d8a307c54d49bc01649a12610b022192b.
The issues fixed by that commit is still fixed.

Reviewers: fclem

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

M	source/blender/draw/engines/overlay/overlay_armature.c

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

diff --git a/source/blender/draw/engines/overlay/overlay_armature.c b/source/blender/draw/engines/overlay/overlay_armature.c
index 1f95eec4486..cbd2589f20f 100644
--- a/source/blender/draw/engines/overlay/overlay_armature.c
+++ b/source/blender/draw/engines/overlay/overlay_armature.c
@@ -1910,7 +1910,7 @@ static void draw_armature_edit(ArmatureDrawContext *ctx)
 
   edbo_compute_bbone_child(arm);
 
-  for (eBone = arm->edbo->first, index = ob->runtime.select_id; eBone;
+  for (eBone = arm->edbo->first, index = ob_orig->runtime.select_id; eBone;
        eBone = eBone->next, index += 0x10000) {
     if (eBone->layer & arm->layer) {
       if ((eBone->flag & BONE_HIDDEN_A) == 0) {
@@ -2005,7 +2005,8 @@ static void draw_armature_pose(ArmatureDrawContext *ctx)
         DRW_state_is_select();
 
     if (is_pose_select) {
-      index = ob->runtime.select_id;
+      const Object *ob_orig = DEG_get_original_object(ob);
+      index = ob_orig->runtime.select_id;
     }
   }



More information about the Bf-blender-cvs mailing list