Page MenuHome

Dynamic Paint With UNDO [Control Z] Crash Blender
Open, Confirmed, LowPublic

Description

System Information
Operating system: Windows-7-6.1.7601-SP1 64 Bits
Graphics card: GeForce GTX TITAN X/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 430.64
Blender Version
Broken: (example: 2.80, edbf15d3c044, master, 2018-11-28, as found on the splash screen)
Worked: (optional)

Short description of error
When Press Control Z While In Weight Paint (EDIT MODE), Blender Crash

Exact steps for others to reproduce the error
Based on the default startup or an attached .blend file (as simple as possible).

  1. Open the provided .blend file
  2. Start playback and enter Weight Paint mode
  3. Paint and then undo (Control + Z)
  4. Blender crashes after a while,

Here is video to show case https://youtu.be/KUUbxSnwmbE

Details

Type
Bug

Event Timeline

Vu Pham (VuPham) updated the task description. (Show Details)
Eitan (EitanSomething) triaged this task as Needs Information from User priority.

The version of blender 2.80 that you are using appears to be old can you test if this is still an issue on the latest version, blender 2.80 rc2.

yes, it's still crash, I have just try with it

This is my Blender version that I try again. The crash is not repeating too much like original issue but still it's there, like 10 times it could crash for one.

Broken: version: 2.80 (sub 74), branch: master, commit date: 2019-07-18 14:52, hash: rB38d4483c6a51

Eitan (EitanSomething) raised the priority of this task from Needs Information from User to Needs Triage by Developer.Thu, Jul 25, 7:36 PM
Sebastian Parborg (zeddb) triaged this task as Confirmed, Medium priority.

@Sergey Sharybin (sergey) it seems like the dynamic paint data gets into an invalid state:

Thread 30 "blender" received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fffd73fa700 (LWP 28484)]
0x0000555557e78595 in dynamicPaint_brushMeshCalculateVelocity (depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04d008, brush=0x7fffc9d372b8,
    brushVel=0x7fffd73f8de0, timescale=0.0909090936) at /home/zed/prog/blender/source/blender/blenkernel/intern/dynamicpaint.c:3821
3821	  numOfVerts_p = mesh_p->totvert;
(gdb) bt
#0  0x0000555557e78595 in dynamicPaint_brushMeshCalculateVelocity (depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04d008, brush=0x7fffc9d372b8,
    brushVel=0x7fffd73f8de0, timescale=0.0909090936) at /home/zed/prog/blender/source/blender/blenkernel/intern/dynamicpaint.c:3821
#1  0x0000555557e79ba2 in dynamicPaint_paintMesh (depsgraph=0x7fffca021988, surface=0x7fffd5828908, brush=0x7fffc9d372b8, brushOb=0x7fffca04d008,
    scene=0x7fffcdfbb008, timescale=0.0909090936) at /home/zed/prog/blender/source/blender/blenkernel/intern/dynamicpaint.c:4286
#2  0x0000555557e80ec4 in dynamicPaint_doStep (depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04b808, surface=0x7fffd5828908,
    timescale=0.0909090936, subframe=0.0909090936) at /home/zed/prog/blender/source/blender/blenkernel/intern/dynamicpaint.c:6289
#3  0x0000555557e812c3 in dynamicPaint_calculateFrame (surface=0x7fffd5828908, depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, cObject=0x7fffca04b808,
    frame=137) at /home/zed/prog/blender/source/blender/blenkernel/intern/dynamicpaint.c:6391
#4  0x0000555557e733af in dynamicPaint_frameUpdate (pmd=0x7fffc9fb1668, depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04b808,
    mesh=0x7fffcfc2d508) at /home/zed/prog/blender/source/blender/blenkernel/intern/dynamicpaint.c:2182
#5  0x0000555557e734cd in dynamicPaint_Modifier_do (pmd=0x7fffc9fb1668, depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04b808,
    mesh=0x7fffcfc2d508) at /home/zed/prog/blender/source/blender/blenkernel/intern/dynamicpaint.c:2207
#6  0x00005555587b1c48 in applyModifier (md=0x7fffc9fb1668, ctx=0x7fffd73f93b0, mesh=0x7fffcfc2d508)
    at /home/zed/prog/blender/source/blender/modifiers/intern/MOD_dynamicpaint.c:110
#7  0x0000555557cd5131 in modwrap_applyModifier (md=0x7fffc9fb1668, ctx=0x7fffd73f93b0, me=0x7fffcfc2d508)
    at /home/zed/prog/blender/source/blender/blenkernel/intern/modifier.c:945
#8  0x0000555557e37538 in mesh_calc_modifiers (depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04b808, useDeform=1, need_mapping=false,
    dataMask=0x7fffd73f98d0, index=-1, use_cache=true, allow_shared_mesh=true, r_deform=0x7fffca04bd68, r_final=0x7fffca04bd60)
    at /home/zed/prog/blender/source/blender/blenkernel/intern/DerivedMesh.c:1434
#9  0x0000555557e39e7a in mesh_build_data (depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04b808, dataMask=0x7fffd73f98d0, need_mapping=false)
    at /home/zed/prog/blender/source/blender/blenkernel/intern/DerivedMesh.c:2054
#10 0x0000555557e3a389 in makeDerivedMesh (depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04b808, em=0x0, dataMask=0x7fffd73f9950)
    at /home/zed/prog/blender/source/blender/blenkernel/intern/DerivedMesh.c:2183
#11 0x0000555557d151a7 in BKE_object_handle_data_update (depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04b808)
    at /home/zed/prog/blender/source/blender/blenkernel/intern/object_update.c:186
#12 0x0000555557d15aa1 in BKE_object_eval_uber_data (depsgraph=0x7fffca021988, scene=0x7fffcdfbb008, ob=0x7fffca04b808)
    at /home/zed/prog/blender/source/blender/blenkernel/intern/object_update.c:354
#13 0x0000555557f4cc54 in std::__invoke_impl<void, void (*&)(Depsgraph*, Scene*, Object*), Depsgraph*, Scene*&, Object*&> (__f=
    @0x7fffeae4afe0: 0x555557d159f1 <BKE_object_eval_uber_data>, __args#0=@0x7fffd73f9b10: 0x7fffca021988, __args#1=@0x7fffeae4aff0: 0x7fffcdfbb008,
    __args#2=@0x7fffeae4afe8: 0x7fffca04b808) at /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/bits/invoke.h:60
#14 0x0000555557f4b24b in std::__invoke<void (*&)(Depsgraph*, Scene*, Object*), Depsgraph*, Scene*&, Object*&> (__fn=
    @0x7fffeae4afe0: 0x555557d159f1 <BKE_object_eval_uber_data>, __args#0=@0x7fffd73f9b10: 0x7fffca021988, __args#1=@0x7fffeae4aff0: 0x7fffcdfbb008,
    __args#2=@0x7fffeae4afe8: 0x7fffca04b808) at /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/bits/invoke.h:95
#15 0x0000555557f4969d in std::_Bind<void (*(std::_Placeholder<1>, Scene*, Object*))(Depsgraph*, Scene*, Object*)>::__call<void, Depsgraph*&&, 0ul, 1ul, 2ul>(std::tuple<Depsgraph*&&>&&, std::_Index_tuple<0ul, 1ul, 2ul>) (this=0x7fffeae4afe0, __args=...)
    at /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/functional:400
#16 0x0000555557f46f80 in std::_Bind<void (*(std::_Placeholder<1>, Scene*, Object*))(Depsgraph*, Scene*, Object*)>::operator()<Depsgraph*, void>(Depsgraph*&&) (this=0x7fffeae4afe0, __args#0=@0x7fffd73f9b10: 0x7fffca021988) at /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/functional:484
#17 0x0000555557f43560 in std::_Function_handler<void (Depsgraph*), std::_Bind<void (*(std::_Placeholder<1>, Scene*, Object*))(Depsgraph*, Scene*, Object*)> >::_M_invoke(std::_Any_data const&, Depsgraph*&&) (__functor=..., __args#0=@0x7fffd73f9b10: 0x7fffca021988)
    at /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/bits/std_function.h:297
--Type <RET> for more, q to quit, c to continue without paging--
#18 0x0000555557f624cd in std::function<void (Depsgraph*)>::operator()(Depsgraph*) const (this=0x7fffcdf3f980, __args#0=0x7fffca021988)
    at /usr/lib/gcc/x86_64-pc-linux-gnu/8.3.0/include/g++-v8/bits/std_function.h:687
#19 0x0000555557f61a5f in DEG::deg_task_run_func (pool=0x7fffca00f008, taskdata=0x7fffcdf3f908, thread_id=6)
    at /home/zed/prog/blender/source/blender/depsgraph/intern/eval/deg_eval.cc:86
#20 0x0000555557f1f99b in task_scheduler_thread_run (thread_p=0x7fffdb99c128) at /home/zed/prog/blender/source/blender/blenlib/intern/task.c:450
#21 0x00007ffff6a2e458 in start_thread () from /lib64/libpthread.so.0
#22 0x00007ffff324e71f in clone () from /lib64/libc.so.6

The dynamicPaint_brush_mesh_get function returns NULL as brush->pmd->modifier.runtime is NULL.
Any ideas?

Sergey Sharybin (sergey) lowered the priority of this task from Confirmed, Medium to Confirmed, Low.

It is indeed some invalid state, but i am not sure what's going on. Same bug happens in 2.79, and this isn't really my area.