Page MenuHome

Crash with keyframing
Closed, ResolvedPublic

Description

System Information
Windows 10 64 bit
Intel Core i7-6700K
32 GB RAM
GTX 1080

Blender Version
Broken: 2.8 2d720f51cd7 compiled in debug mode
Worked: it works when compiled in release mode

Short description of error
Crash when keyframing a property, deleting the keyframe and inserting the keyframe again.

Exact steps for others to reproduce the error

  1. Start blender in debug mode.
  2. Select default cube if it not selected.
  3. From the property panel, set the keyframe for the location (or any animatable property).
  4. Delete the keyframe.
  5. Keyframe the property again.

I've also made a small video showing the issue: https://www.youtube.com/watch?v=AZUsa6vTnYY

Event Timeline

Philipp Oeser (lichtwerk) triaged this task as Confirmed priority.Nov 29 2018, 10:21 AM

Confirmed, asserts here:

BLI_assert(DEG::deg_validate_copy_on_write_datablock(&object->id));

1  raise                                                                         0x7ffff466853f 
2  abort                                                                         0x7ffff4652895 
3  (anonymous namespace)::deg_iterator_objects_step depsgraph_query_iter.cc 197  0x2f1ad22      
4  DEG_iterator_objects_next                        depsgraph_query_iter.cc 285  0x2f1b06e      
5  DEG_iterator_objects_begin                       depsgraph_query_iter.cc 252  0x2f1af49      
6  DRW_draw_render_loop_ex                          draw_manager.c          1455 0x27fed81      
7  DRW_draw_view                                    draw_manager.c          1395 0x27fea87      
8  view3d_draw_view                                 view3d_draw.c           1319 0x1d9fef2

@Sergey Sharybin (sergey): could you check on this?

Note: I have merged two tasks that do the keyframing on material properties [which is a little bit different from the original report]

In this case we assert elsewhere

BLI_assert((id->tag & LIB_TAG_COPIED_ON_WRITE) == 0);
id is ACMaterialAction
id-> tag is 233472 / 111001000000000000 here [which should be OK?] [which reminds me of T58185]

1   raise 					0x7ffff466853f 
2   abort					0x7ffff4652895 
3   DEG::Depsgraph::add_id_node				depsgraph.cc                    339  0x2f128dd      
4   DEG::DepsgraphNodeBuilder::add_id_node		deg_builder_nodes.cc            177  0x2f1fd88      
5   DEG::DepsgraphNodeBuilder::add_component_node	deg_builder_nodes.cc            213  0x2f1ff0e      
6   DEG::DepsgraphNodeBuilder::add_operation_node(ID *, DEG::eDepsNode_Type, const char *, std::function<void (Depsgraph *)> const&, DEG::eDepsOperation_Code, const char *, int) deg_builder_nodes.cc            253  0x2f20124      
7   DEG::DepsgraphNodeBuilder::add_operation_node(ID *, DEG::eDepsNode_Type, std::function<void (Depsgraph *)> const&, DEG::eDepsOperation_Code, const char *, int)               deg_builder_nodes.cc            265  0x2f2019a      
8   DEG::DepsgraphNodeBuilder::build_action 			deg_builder_nodes.cc            930  0x2f21ed8      
9   DEG::DepsgraphNodeBuilder::build_animdata			deg_builder_nodes.cc            871  0x2f21c70      
10  DEG::DepsgraphNodeBuilder::build_material			deg_builder_nodes.cc            1508 0x2f23c72      
11  DEG::DepsgraphNodeBuilder::build_object_data_geometry	deg_builder_nodes.cc            1237 0x2f22d5d      
12  DEG::DepsgraphNodeBuilder::build_object_data 		deg_builder_nodes.cc            706  0x2f2143b      
13  DEG::DepsgraphNodeBuilder::build_object			deg_builder_nodes.cc            627  0x2f2104f      
14  DEG::DepsgraphNodeBuilder::build_view_layer			deg_builder_nodes_view_layer.cc 114  0x2f32e7a      
15  DEG_graph_build_from_view_layer				depsgraph_build.cc              240  0x2f17063      
16  DEG_graph_relations_update 					depsgraph_build.cc              311  0x2f172d1      
17  BKE_scene_graph_update_for_newframe				scene.c                         1469 0x2b8b457      
18  engine_depsgraph_init					external_engine.c               500  0x22fbda0      
19  RE_engine_render						external_engine.c               729  0x22fc7c0      
20  do_render_3d 						pipeline.c                      1101 0x230418b
Philipp Oeser (lichtwerk) renamed this task from Crash with keyframing in debug mode to Crash with keyframing.Dec 4 2018, 11:16 AM

The fix didn't work for me. It is still crashing with the same steps.

Yep, still getting both asserts here, too

Committed few more fixes, hopefully now all usecases are covered :)