Page MenuHome

New Scene -> "Full Copy" Crashes Blender
Closed, ResolvedPublicBUG

Description

System Information
Operating system: Linux-5.3.18-050318-generic-x86_64-with-debian-buster-sid 64 Bits
Graphics card: GeForce GTX 1080 Ti/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 440.48.02

Blender Version
Broken: version: 2.83 (sub 0), branch: master, commit date: 2020-01-16 17:54, hash: rBd42a7bbd6ea5
Worked: 2.83 01d9a2f71b56

Short description of error
Using "Full Copy" to duplicate a scene instantly crashes Blender.

Exact steps for others to reproduce the error

  • Open Blender
  • Duplicate the current scene using "Full Copy" -> Crash
  • I also tried using "Load Factory Settings" before but to no avail
  • Happens on Linux and Windows, both with my own builds and with the current buildbot builds.

Event Timeline

Steffen Dünner (SteffenD) renamed this task from New Scene -> "Full Copy" Crashes Blender to New Scene -> "Copy Settings" Crashes Blender.Jan 16 2020, 9:02 PM
Steffen Dünner (SteffenD) renamed this task from New Scene -> "Copy Settings" Crashes Blender to New Scene -> "Full Copy" Crashes Blender.
Steffen Dünner (SteffenD) updated the task description. (Show Details)
Steffen Dünner (SteffenD) updated the task description. (Show Details)

Update: Full Copy doesn't crash if the scene is completely empty, i.e. not containing any objects, camera or lights (or anything else).

I can confirm here. Looks outliner related:

base variable is nullptr

blender.exe!outliner_add_layer_collection_objects(SpaceOutliner * soops, ListBase * tree, ViewLayer * layer, LayerCollection * lc, TreeElement * ten) Line 1365	C
blender.exe!outliner_add_layer_collections_recursive(SpaceOutliner * soops, ListBase * tree, ViewLayer * layer, ListBase * layer_collections, TreeElement * parent_ten, const bool show_objects) Line 1381	C
blender.exe!outliner_add_view_layer(SpaceOutliner * soops, ListBase * tree, TreeElement * parent, ViewLayer * layer, const bool show_objects) Line 1428	C
blender.exe!outliner_build_tree(Main * mainvar, Scene * scene, ViewLayer * view_layer, SpaceOutliner * soops, ARegion * ar) Line 2421	C
blender.exe!draw_outliner(const bContext * C) Line 3635	C
blender.exe!outliner_main_region_draw(const bContext * C, ARegion * ar) Line 96	C
blender.exe!ED_region_do_draw(bContext * C, ARegion * ar) Line 539	C
blender.exe!wm_draw_window_offscreen(bContext * C, wmWindow * win, bool stereo) Line 635	C
blender.exe!wm_draw_window(bContext * C, wmWindow * win) Line 773	C
blender.exe!wm_draw_update(bContext * C) Line 953	C
blender.exe!WM_main(bContext * C) Line 424	C
blender.exe!main(int argc, const unsigned char * * UNUSED_argv_c) Line 520	C

Funny, yes. If I get rid of the Outliner I can actually do a "Full Copy" without instantly crashing Blender,. But as soon as I change the layout containing a Outliner again it crashes.

William Reynish (billreynish) changed the task status from Needs Triage to Confirmed.Jan 16 2020, 11:01 PM
William Reynish (billreynish) changed the subtype of this task from "Report" to "Bug".

@Steffen Dünner (SteffenD) Thanks for providing the has of a recent version that did still work. Made it lots easier to find out that rBac723db57fd8ba5493088b135ef7c910be4ca2ff caused the issue.

The crash occurs in outliner_add_layer_collection_objects(), because BKE_view_layer_base_find(layer, cob->ob); returns NULL (i.e. it cannot find the object's base).