Page MenuHome

Crash on Sculpt Stroke After Undo w/ Dyntopo Enabled
Closed, DuplicatePublic

Description

System Information
Ubuntu 18.04 Bionic
Linux Kernel 4.15.0-39-generic
Gnome Shell

Blender Version
Broken: 2.8 ( 6491d50d02b )

Short description of error
Any sculpt stroke made after an undo will cause blender to crash. This will only happen when dyntopology is enabled. Only tested with default settings on relative mode. Happens with most tools.

Exact steps for others to reproduce the error

  • Use sculpt workspace (optional?)
  • Enable Dyntoplogy
  • Sculpt with any brush (tested with standard, grab, grab / snake hook, scrape and flatten)
  • Undo change
  • Try the same brush again. Mesh seems to change and then immediately crashes as SIGABRT.

GDB

The program being debugged has been started already.
Start it from the beginning? (y or n) y
Starting program: /home/eoin/Source/blender/blender-git/build/bin/blender 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[New Thread 0x7fffcdfff700 (LWP 28952)]
[New Thread 0x7fffcc7ff700 (LWP 28953)]
[New Thread 0x7fffcbffe700 (LWP 28954)]
[New Thread 0x7fffcb7fd700 (LWP 28955)]
[New Thread 0x7fffcaffc700 (LWP 28956)]
[New Thread 0x7fffca7fb700 (LWP 28957)]
[New Thread 0x7fffc9ffa700 (LWP 28958)]
[New Thread 0x7fffc97f9700 (LWP 28959)]
[New Thread 0x7fffc8ff8700 (LWP 28960)]
Color management: using fallback mode for management
ndof: spacenavd not found
Read prefs: /home/eoin/.config/blender/2.80/config/userpref.blend
Color management: scene view "Filmic" not found, setting default "Default".
Color management: scene look "Filmic - Base Contrast" not found, setting default "None".
[New Thread 0x7ffff7f45700 (LWP 28961)]
[New Thread 0x7ffff7e82700 (LWP 28962)]
[Thread 0x7ffff7e82700 (LWP 28962) exited]
[Thread 0x7ffff7f45700 (LWP 28961) exited]
[New Thread 0x7fffc5667700 (LWP 28963)]
[Thread 0x7fffc5667700 (LWP 28963) exited]
[New Thread 0x7ffff7f45700 (LWP 28964)]
[New Thread 0x7ffff7e82700 (LWP 28965)]
[New Thread 0x7fffcd494700 (LWP 28966)]
[New Thread 0x7fffc5667700 (LWP 28967)]
[New Thread 0x7fffbcebc700 (LWP 28968)]
[New Thread 0x7fffbbfff700 (LWP 28969)]
[New Thread 0x7fffb7e7f700 (LWP 28971)]
[New Thread 0x7fffb767e700 (LWP 28972)]
[New Thread 0x7fffb6e7d700 (LWP 28973)]
[New Thread 0x7fffb667c700 (LWP 28974)]
[New Thread 0x7fffb5e7b700 (LWP 28975)]
[New Thread 0x7fffb567a700 (LWP 28976)]
[New Thread 0x7fffb4e79700 (LWP 28977)]
found bundled python: /home/eoin/Source/blender/blender-git/build/bin/2.80/python
Exception in module register(): /home/eoin/Source/blender/blender-git/build/bin/2.80/scripts/addons/node_wrangler.py
Traceback (most recent call last):
  File "/home/eoin/Source/blender/blender-git/build/bin/2.80/scripts/modules/addon_utils.py", line 393, in enable
    mod.register()
  File "/home/eoin/Source/blender/blender-git/build/bin/2.80/scripts/addons/node_wrangler.py", line 4792, in register
    register_class(cls)
RuntimeError: Error: Registering panel class: 'NODE_PT_nw_node_wrangler' has category 'Node Wrangler' 

Traceback (most recent call last):
  File "/home/eoin/Source/blender/blender-git/build/bin/2.80/scripts/modules/addon_utils.py", line 351, in enable
    mod = __import__(module_name)
ModuleNotFoundError: No module named 'io_scene_gltf2'
/home/eoin/Source/blender/blender-git/build/bin/blender(BLI_system_backtrace+0x35) [0x555558397420]
/home/eoin/Source/blender/blender-git/build/bin/blender(BM_log_entry_drop+0x147) [0x5555579beaa1]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x213bd7d) [0x55555768fd7d]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x213e6ff) [0x5555576926ff]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x2b2071b) [0x55555807471b]
/home/eoin/Source/blender/blender-git/build/bin/blender(BKE_undosys_step_push_with_type+0xd5) [0x555558075665]
/home/eoin/Source/blender/blender-git/build/bin/blender(BKE_undosys_step_push+0xbf) [0x5555580759b6]
/home/eoin/Source/blender/blender-git/build/bin/blender(sculpt_undo_push_end+0x9c) [0x555557692562]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x21371e5) [0x55555768b1e5]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x2100ae3) [0x555557654ae3]
/home/eoin/Source/blender/blender-git/build/bin/blender(paint_stroke_modal+0x474) [0x555557655faa]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x1ab0e38) [0x555557004e38]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x1ab288b) [0x55555700688b]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x1ab29cb) [0x5555570069cb]
/home/eoin/Source/blender/blender-git/build/bin/blender(wm_event_do_handlers+0x6cf) [0x555557007d7f]
/home/eoin/Source/blender/blender-git/build/bin/blender(WM_main+0x30) [0x555556ffc89b]
/home/eoin/Source/blender/blender-git/build/bin/blender(+0x1aa322f) [0x555556ff722f]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xe7) [0x7ffff35eeb97]
/home/eoin/Source/blender/blender-git/build/bin/blender(_start+0x2a) [0x555556ff6b9a]
BLI_assert failed: /home/eoin/Source/blender/blender-git/source/blender/bmesh/intern/bmesh_log.c:744, BM_log_entry_drop(), at '!"Cannot drop BMLogEntry from middle"'

Thread 1 "blender" received signal SIGABRT, Aborted.
__GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
51	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) bt
#0  0x00007ffff360be97 in __GI_raise (sig=sig@entry=6)
    at ../sysdeps/unix/sysv/linux/raise.c:51
#1  0x00007ffff360d801 in __GI_abort () at abort.c:79
#2  0x00005555579beade in BM_log_entry_drop (entry=0x7fffaa9372c8)
    at /home/eoin/Source/blender/blender-git/source/blender/bmesh/intern/bmesh_log.c:744
#3  0x000055555768fd7d in sculpt_undo_free_list (lb=0x7fffafa797b0)
    at /home/eoin/Source/blender/blender-git/source/blender/editors/sculpt_paint/sculpt_undo.c:621
#4  0x00005555576926ff in sculpt_undosys_step_free (us_p=0x7fffafa79748)
    at /home/eoin/Source/blender/blender-git/source/blender/editors/sculpt_paint/sculpt_undo.c:1061
#5  0x000055555807471b in undosys_step_free_and_unlink (ustack=0x7fffc80cfa68, us=0x7fffafa79748)
    at /home/eoin/Source/blender/blender-git/source/blender/blenkernel/intern/undo_system.c:184
#6  0x0000555558075665 in BKE_undosys_step_push_with_type (ustack=0x7fffc80cfa68, C=0x0, name=0x0, ut=0x7fffc80f3288)
    at /home/eoin/Source/blender/blender-git/source/blender/blenkernel/intern/undo_system.c:436
#7  0x00005555580759b6 in BKE_undosys_step_push (ustack=0x7fffc80cfa68, C=0x0, name=0x0)
    at /home/eoin/Source/blender/blender-git/source/blender/blenkernel/intern/un---Type <return> to continue, or q <return> to quit---bt
do_system.c:492
#8  0x0000555557692562 in sculpt_undo_push_end ()
    at /home/eoin/Source/blender/blender-git/source/blender/editors/sculpt_paint/sculpt_undo.c:1007
#9  0x000055555768b1e5 in sculpt_stroke_done (C=0x7fffce71ca08, UNUSED_stroke=0x7fffaa945608)
    at /home/eoin/Source/blender/blender-git/source/blender/editors/sculpt_paint/sculpt.c:5058
#10 0x0000555557654ae3 in stroke_done (C=0x7fffce71ca08, op=0x7fffa8bf9e88)
    at /home/eoin/Source/blender/blender-git/source/blender/editors/sculpt_paint/paint_stroke.c:814
#11 0x0000555557655faa in paint_stroke_modal (C=0x7fffce71ca08, op=0x7fffa8bf9e88, event=0x7fffb2785688)
    at /home/eoin/Source/blender/blender-git/source/blender/editors/sculpt_paint/paint_stroke.c:1247
#12 0x0000555557004e38 in wm_handler_operator_call (C=0x7fffce71ca08, handlers=0x7fffc83a1ca0, handler=0x7fffa8bf8b08, event=0x7fffb2785688, properties=0x0)
    at /home/eoin/Source/blender/blender-git/source/blender/windowmanager/intern/wm_event_system.c:1962
#13 0x000055555700688b in wm_handlers_do_intern (C=0x7fffce71ca08, event=0x7fffb2785688, handlers=0x7fffc83a1ca0)
    at /home/eoin/Source/blender/blender-git/source/blender/windowmanager/intern/wm_event_system.c:2568
---Type <return> to continue, or q <return> to quit---
#14 0x00005555570069cb in wm_handlers_do (C=0x7fffce71ca08, event=0x7fffb2785688, handlers=0x7fffc83a1ca0)
    at /home/eoin/Source/blender/blender-git/source/blender/windowmanager/intern/wm_event_system.c:2607
#15 0x0000555557007d7f in wm_event_do_handlers (C=0x7fffce71ca08)
    at /home/eoin/Source/blender/blender-git/source/blender/windowmanager/intern/wm_event_system.c:2997
#16 0x0000555556ffc89b in WM_main (C=0x7fffce71ca08)
    at /home/eoin/Source/blender/blender-git/source/blender/windowmanager/intern/wm.c:427
#17 0x0000555556ff722f in main (argc=1, argv=0x7fffffffdd08)
    at /home/eoin/Source/blender/blender-git/source/creator/creator.c:525

Educated guess would be that source/blender/editors/sculpt_paint/sculpt_undo.c:621 is having problems with dyntopology state storage but I'm not familiar enough with the code to really know for sure. Will love to see how developers resolve this issue.

Details

Type
Bug