Page MenuHome

Blender 2.8 | Bone layer moving in pose mode causes crash
Closed, ResolvedPublic

Description

System Information
Win7, Nvidia GTX 1080ti

Blender Version
Broken: blender-2.80.0-git.9abcf56fa88-windows64
Worked: 2.79

Short description of error
When moving bones to another layer while in pose mode blender crashes

Exact steps for others to reproduce the error
Use my blend file. I tried reproducing the error with a simpler scene but it didn't cause a crash.

  • Open scene
  • Switch to pose mode
  • Select one of the longer tail bones and move it to the second layer
  • Go to the Layers in the Skeleton menu of the Armature and click the first one

At this point Blender should crash.

https://drive.google.com/file/d/1ZLpKpUv1miQCaHCzsXgD49q1y0Dz9cQs/view?usp=sharing

As this rig is part of a production and provided only for debugging it would be nice if someone could remove the link after the issue has been resolved.

Event Timeline

Philipp Oeser (lichtwerk) lowered the priority of this task from 90 to 50.

Confirmed, bPoseChannel is NULL (cannot be found in BKE_pose_channel_active() when its on a disabled layer)

1  mul_m4_m4m4_uniq                    math_matrix.c           204  0x2eb283f 
2  mul_m4_m4m4                         math_matrix.c           189  0x2eb270f 
3  WIDGETGROUP_armature_spline_refresh view3d_gizmo_armature.c 200  0x1d97393 
4  wm_gizmogroup_ensure_initialized    wm_gizmo_group.c        219  0x1c847aa 
5  gizmomap_prepare_drawing            wm_gizmo_map.c          366  0x1c87452 
6  WM_gizmomap_draw                    wm_gizmo_map.c          452  0x1c87743 
7  DRW_draw_gizmo_3d                   draw_view.c             256  0x27f5143 
8  DRW_draw_render_loop_ex             draw_manager.c          1547 0x27e69bc 
9  DRW_draw_view                       draw_manager.c          1395 0x27e6347 
10 view3d_draw_view                    view3d_draw.c           1319 0x1d88067 
11 view3d_main_region_draw             view3d_draw.c           1340 0x1d88117 
12 ED_region_do_draw                   area.c                  529  0x22081ba 
13 wm_draw_window_offscreen            wm_draw.c               580  0x1c50de3

I guess for widget drawing it should be OK to just do nothing if we're not getting active pose channel back, fix incoming...