Crash to desktop with creating a new scene with a motion tracking file loaded #80035

Closed
opened 2020-08-23 10:46:10 +02:00 by Reiner Prokein · 11 comments

System Information
Operating system: Windows-10-10.0.19041-SP0 64 Bits
Graphics card: GeForce GTX 1060 6GB/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 451.48

Blender Version
Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-08-23 06:32, hash: ed288a5786
Caused by 263148dbac

Short description of error
I have started a motion tracking project. Saved it. Reopened it. Then i tried to create a new scene. And Blender crashed to desktop.

Exact steps for others to reproduce the error
[Please describe the exact steps needed to reproduce the issue]
[Based on the default startup or an attached .blend file (as simple as possible)]

Open the attached motion tracking scene. Add a new scene.

crashscene.zip

2020-08-23 10-44-04.mp4

**System Information** Operating system: Windows-10-10.0.19041-SP0 64 Bits Graphics card: GeForce GTX 1060 6GB/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 451.48 **Blender Version** Broken: version: 2.91.0 Alpha, branch: master, commit date: 2020-08-23 06:32, hash: `ed288a5786` Caused by 263148dbac **Short description of error** I have started a motion tracking project. Saved it. Reopened it. Then i tried to create a new scene. And Blender crashed to desktop. **Exact steps for others to reproduce the error** [Please describe the exact steps needed to reproduce the issue] [Based on the default startup or an attached .blend file (as simple as possible)] Open the attached motion tracking scene. Add a new scene. [crashscene.zip](https://archive.blender.org/developer/F8805698/crashscene.zip) [2020-08-23 10-44-04.mp4](https://archive.blender.org/developer/F8805705/2020-08-23_10-44-04.mp4)
Author

Added subscriber: @tiles

Added subscriber: @tiles

#80033 was marked as duplicate of this issue

#80033 was marked as duplicate of this issue
Member

Added subscriber: @lichtwerk

Added subscriber: @lichtwerk
Member

Changed status from 'Needs Triage' to: 'Confirmed'

Changed status from 'Needs Triage' to: 'Confirmed'
Member

Confirmed, checking...

Confirmed, checking...
Philipp Oeser self-assigned this 2020-08-24 12:37:55 +02:00
Member

Caused by 263148dbac

time_source is NULL here for a depsgraph which hasnt been build all the way (viewlayer not built).
In this example / file, the crash happens not for the new scene (Scene.003 -- this is built and has a timesource node), but for the other scenes Scene and Scene.001 (these dont have their viewplayers built and dont have a timesource node -- which I think is correct)

1   blender::deg::Depsgraph::tag_time_source depsgraph.cc         107   0x409e7c1 
2   DEG_graph_time_tag_update                depsgraph_tag.cc     775   0x40b2705 
3   DEG_time_tag_update                      depsgraph_tag.cc     768   0x40b26db 
4   ED_update_for_newframe                   screen_edit.c        1569  0x3904cff 
5   ED_scene_change_update                   scene_edit.c         126   0x3bdbddc 
6   WM_window_set_active_scene               wm_window.c          2341  0x3212839 
7   ED_scene_add                             scene_edit.c         73    0x3bdbc55 
8   scene_new_exec                           scene_edit.c         202   0x3bdc10f 
9   WM_menu_invoke_ex                        wm_operators.c       972   0x31fe2a4 
10  WM_menu_invoke                           wm_operators.c       992   0x31fe3d3 
11  wm_operator_invoke                       wm_event_system.c    1300  0x31df586 
12  wm_operator_call_internal                wm_event_system.c    1513  0x31dfcc2 
13  WM_operator_name_call_ptr                wm_event_system.c    1561  0x31dfebf 
14  ui_apply_but_funcs_after                 interface_handlers.c 904   0x3d34b1f 
15  ui_popup_handler                         interface_handlers.c 10930 0x3d4f7a2 
16  wm_handler_ui_call                       wm_event_system.c    638   0x31ddc83 
17  wm_handlers_do_intern                    wm_event_system.c    2754  0x31e30ca 
18  wm_handlers_do                           wm_event_system.c    2865  0x31e34c2 
19  wm_event_do_handlers                     wm_event_system.c    3289  0x31e4783 

For the new scene we are switching to (Scene.003), the timesource node gets correctly added here beforehand:

1   blender::deg::DepsgraphNodeBuilder::build_view_layer    deg_builder_nodes_view_layer.cc 98    0x41070d3 
2   blender::deg::ViewLayerBuilderPipeline::build_nodes     pipeline_view_layer.cc          36    0x40cf3c7 
3   blender::deg::AbstractBuilderPipeline::build_step_nodes pipeline.cc                     78    0x40cb3cf 
4   blender::deg::AbstractBuilderPipeline::build            pipeline.cc                     57    0x40cb216 
5   DEG_graph_build_from_view_layer                         depsgraph_build.cc              216   0x40a2b80 
6   DEG_graph_relations_update                              depsgraph_build.cc              269   0x40a2e9d 
7   ED_scene_change_update                                  scene_edit.c                    122   0x3bdbda7 
8   WM_window_set_active_scene                              wm_window.c                     2341  0x3212839 
9   rna_Window_scene_update                                 rna_wm.c                        736   0x381892d 
10  rna_property_update                                     rna_access.c                    2274  0x364ed87 
11  RNA_property_update                                     rna_access.c                    2345  0x364ef67 
12  template_ID_set_property_exec_fn                        interface_templates.c           328   0x3d8932d 
13  ui_apply_but_funcs_after                                interface_handlers.c            921   0x3d34bc1 
14  ui_handler_region_menu                                  interface_handlers.c            10840 0x3d4f4d9 
15  wm_handler_ui_call                                      wm_event_system.c               638   0x31ddc83 
16  wm_handlers_do_intern                                   wm_event_system.c               2754  0x31e30ca 
17  wm_handlers_do                                          wm_event_system.c               2865  0x31e34c2 
18  wm_event_do_handlers                                    wm_event_system.c               3289  0x31e4783 
19  WM_main                                                 wm.c                            476   0x31d90b3 
20  main                                                    creator.c                       546   0x2da1baa 
... <More>         

So I think a valid solution is to permit depsgraphs which dont have a timesource in DEG_graph_time_tag_update (we are looping over all depsgraphs in DEG_time_tag_update!) and just continue happily?

Will post a patch next.

Caused by 263148dbac `time_source` is NULL here for a depsgraph which hasnt been build all the way (viewlayer not built). In this example / file, the crash happens not for the new scene (`Scene.003` -- this is built and has a timesource node), but for the other scenes `Scene` and `Scene.001` (these dont have their viewplayers built and dont have a timesource node -- which I think is correct) ``` 1 blender::deg::Depsgraph::tag_time_source depsgraph.cc 107 0x409e7c1 2 DEG_graph_time_tag_update depsgraph_tag.cc 775 0x40b2705 3 DEG_time_tag_update depsgraph_tag.cc 768 0x40b26db 4 ED_update_for_newframe screen_edit.c 1569 0x3904cff 5 ED_scene_change_update scene_edit.c 126 0x3bdbddc 6 WM_window_set_active_scene wm_window.c 2341 0x3212839 7 ED_scene_add scene_edit.c 73 0x3bdbc55 8 scene_new_exec scene_edit.c 202 0x3bdc10f 9 WM_menu_invoke_ex wm_operators.c 972 0x31fe2a4 10 WM_menu_invoke wm_operators.c 992 0x31fe3d3 11 wm_operator_invoke wm_event_system.c 1300 0x31df586 12 wm_operator_call_internal wm_event_system.c 1513 0x31dfcc2 13 WM_operator_name_call_ptr wm_event_system.c 1561 0x31dfebf 14 ui_apply_but_funcs_after interface_handlers.c 904 0x3d34b1f 15 ui_popup_handler interface_handlers.c 10930 0x3d4f7a2 16 wm_handler_ui_call wm_event_system.c 638 0x31ddc83 17 wm_handlers_do_intern wm_event_system.c 2754 0x31e30ca 18 wm_handlers_do wm_event_system.c 2865 0x31e34c2 19 wm_event_do_handlers wm_event_system.c 3289 0x31e4783 ``` For the new scene we are switching to (`Scene.003`), the timesource node gets correctly added here beforehand: ``` 1 blender::deg::DepsgraphNodeBuilder::build_view_layer deg_builder_nodes_view_layer.cc 98 0x41070d3 2 blender::deg::ViewLayerBuilderPipeline::build_nodes pipeline_view_layer.cc 36 0x40cf3c7 3 blender::deg::AbstractBuilderPipeline::build_step_nodes pipeline.cc 78 0x40cb3cf 4 blender::deg::AbstractBuilderPipeline::build pipeline.cc 57 0x40cb216 5 DEG_graph_build_from_view_layer depsgraph_build.cc 216 0x40a2b80 6 DEG_graph_relations_update depsgraph_build.cc 269 0x40a2e9d 7 ED_scene_change_update scene_edit.c 122 0x3bdbda7 8 WM_window_set_active_scene wm_window.c 2341 0x3212839 9 rna_Window_scene_update rna_wm.c 736 0x381892d 10 rna_property_update rna_access.c 2274 0x364ed87 11 RNA_property_update rna_access.c 2345 0x364ef67 12 template_ID_set_property_exec_fn interface_templates.c 328 0x3d8932d 13 ui_apply_but_funcs_after interface_handlers.c 921 0x3d34bc1 14 ui_handler_region_menu interface_handlers.c 10840 0x3d4f4d9 15 wm_handler_ui_call wm_event_system.c 638 0x31ddc83 16 wm_handlers_do_intern wm_event_system.c 2754 0x31e30ca 17 wm_handlers_do wm_event_system.c 2865 0x31e34c2 18 wm_event_do_handlers wm_event_system.c 3289 0x31e4783 19 WM_main wm.c 476 0x31d90b3 20 main creator.c 546 0x2da1baa ... <More> ``` So I think a valid solution is to permit depsgraphs which dont have a timesource in `DEG_graph_time_tag_update` (we are looping over all depsgraphs in `DEG_time_tag_update`!) and just continue happily? Will post a patch next.
Philipp Oeser removed their assignment 2020-08-24 15:25:12 +02:00
Sergey Sharybin was assigned by Philipp Oeser 2020-08-24 15:25:12 +02:00
Member

Added subscriber: @Sergey

Added subscriber: @Sergey
Member

Since @Sergey has P1598 up his sleeves, will assign to him

Since @Sergey has [P1598](https://archive.blender.org/developer/P1598.txt) up his sleeves, will assign to him

This issue was referenced by 5b021dff41

This issue was referenced by 5b021dff4136353680ba379fc530f49ce564c104

Changed status from 'Confirmed' to: 'Resolved'

Changed status from 'Confirmed' to: 'Resolved'

Added subscribers: @Yassir, @JacquesLucke, @iss

Added subscribers: @Yassir, @JacquesLucke, @iss
Thomas Dinges added this to the 2.91 milestone 2023-02-08 16:20:48 +01:00
Sign in to join this conversation.
No Label
Interest
Alembic
Interest
Animation & Rigging
Interest
Asset Browser
Interest
Asset Browser Project Overview
Interest
Audio
Interest
Automated Testing
Interest
Blender Asset Bundle
Interest
BlendFile
Interest
Collada
Interest
Compatibility
Interest
Compositing
Interest
Core
Interest
Cycles
Interest
Dependency Graph
Interest
Development Management
Interest
EEVEE
Interest
EEVEE & Viewport
Interest
Freestyle
Interest
Geometry Nodes
Interest
Grease Pencil
Interest
ID Management
Interest
Images & Movies
Interest
Import Export
Interest
Line Art
Interest
Masking
Interest
Metal
Interest
Modeling
Interest
Modifiers
Interest
Motion Tracking
Interest
Nodes & Physics
Interest
OpenGL
Interest
Overlay
Interest
Overrides
Interest
Performance
Interest
Physics
Interest
Pipeline, Assets & IO
Interest
Platforms, Builds & Tests
Interest
Python API
Interest
Render & Cycles
Interest
Render Pipeline
Interest
Sculpt, Paint & Texture
Interest
Text Editor
Interest
Translations
Interest
Triaging
Interest
Undo
Interest
USD
Interest
User Interface
Interest
UV Editing
Interest
VFX & Video
Interest
Video Sequencer
Interest
Virtual Reality
Interest
Vulkan
Interest
Wayland
Interest
Workbench
Interest: X11
Legacy
Blender 2.8 Project
Legacy
Milestone 1: Basic, Local Asset Browser
Legacy
OpenGL Error
Meta
Good First Issue
Meta
Papercut
Meta
Retrospective
Meta
Security
Module
Animation & Rigging
Module
Core
Module
Development Management
Module
EEVEE & Viewport
Module
Grease Pencil
Module
Modeling
Module
Nodes & Physics
Module
Pipeline, Assets & IO
Module
Platforms, Builds & Tests
Module
Python API
Module
Render & Cycles
Module
Sculpt, Paint & Texture
Module
Triaging
Module
User Interface
Module
VFX & Video
Platform
FreeBSD
Platform
Linux
Platform
macOS
Platform
Windows
Priority
High
Priority
Low
Priority
Normal
Priority
Unbreak Now!
Status
Archived
Status
Confirmed
Status
Duplicate
Status
Needs Info from Developers
Status
Needs Information from User
Status
Needs Triage
Status
Resolved
Type
Bug
Type
Design
Type
Known Issue
Type
Patch
Type
Report
Type
To Do
No Milestone
No project
No Assignees
5 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: blender/blender#80035
No description provided.