System Information
Operating system: Linux-5.9.14-arch1-1-x86_64-with-arch-Arch-Linux 64 Bits
Graphics card: GeForce RTX 2070/PCIe/SSE2 NVIDIA Corporation 4.5.0 NVIDIA 455.45.01
Blender Version
Broken: version: 2.92.0 Alpha, branch: master, commit date: 2020-12-21 19:07, hash: rB2d6e6d035b66
Worked: Never
Short description of error
On a mesh with no faces, attempting to use the Poisson Disk method on the Point Distribute node causes blender to crash.
Exact steps for others to reproduce the error
- Open the given file.
- Set the Point Distribute node's method from Random to Poisson Disk.
- Blender crashes.
Full, noisy, GDB backtrace below:
#0 0x000000000c2a77e6 in BLI_bvhtree_get_bounding_box (tree=0x0, r_bb_min=0x7fffd45b49b0, r_bb_max=0x7fffd45b49bc) at {SOURCE_DIR}/blender/source/blender/blenlib/intern/BLI_kdopbvh.c:1084
#1 0x000000000409aa48 in blender::nodes::poisson_scatter_points_from_mesh (mesh=0x7fffd2210008, density=1, minimum_distance=0.100000001, density_factors=..., r_ids=..., seed=0) at {SOURCE_DIR}/blender/source/blender/nodes/geometry/nodes/node_geo_point_distribute.cc:214
#2 0x000000000409b2ca in blender::nodes::geo_node_point_distribute_exec (params=...) at {SOURCE_DIR}/blender/source/blender/nodes/geometry/nodes/node_geo_point_distribute.cc:295
#3 0x0000000003de00e8 in GeometryNodesEvaluator::execute_node (this=0x7fffd45b5b90, node=..., params=...) at {SOURCE_DIR}/blender/source/blender/modifiers/intern/MOD_nodes.cc:307
#4 0x0000000003ddff0b in GeometryNodesEvaluator::compute_output_and_forward (this=0x7fffd45b5b90, socket_to_compute=...) at {SOURCE_DIR}/blender/source/blender/modifiers/intern/MOD_nodes.cc:290
#5 0x0000000003ddfb6e in GeometryNodesEvaluator::get_input_value (this=0x7fffd45b5b90, socket_to_compute=...) at {SOURCE_DIR}/blender/source/blender/modifiers/intern/MOD_nodes.cc:260
#6 0x0000000003ddf860 in GeometryNodesEvaluator::execute (this=0x7fffd45b5b90) at {SOURCE_DIR}/blender/source/blender/modifiers/intern/MOD_nodes.cc:226
#7 0x0000000003ddd1b2 in compute_geometry (tree=..., group_input_sockets=..., socket_to_compute=..., input_geometry_set=..., nmd=0x7fffd1e09008, ctx=0x7fffd45b6870) at {SOURCE_DIR}/blender/source/blender/modifiers/intern/MOD_nodes.cc:857
#8 0x0000000003ddd9a3 in modifyGeometry (md=0x7fffd1e09008, ctx=0x7fffd45b6870, geometry_set=...) at {SOURCE_DIR}/blender/source/blender/modifiers/intern/MOD_nodes.cc:964
#9 0x0000000003dddbea in modifyGeometrySet (md=0x7fffd1e09008, ctx=0x7fffd45b6870, geometry_set=0x7fffd45b69d0) at {SOURCE_DIR}/blender/source/blender/modifiers/intern/MOD_nodes.cc:984
#10 0x000000000389c849 in modifier_modify_mesh_and_geometry_set (md=0x7fffd1e09008, mectx=..., ob=0x7ffff4f53408, input_mesh=0x7fffd2210008, geometry_set=...) at {SOURCE_DIR}/blender/source/blender/blenkernel/intern/DerivedMesh.cc:916
#11 0x000000000389d7c1 in mesh_calc_modifiers (depsgraph=0x7ffff016db08, scene=0x7ffff5578c08, ob=0x7ffff4f53408, useDeform=1, need_mapping=false, dataMask=0x7fffd45b6eb0, index=-1, use_cache=true, allow_shared_mesh=true, r_deform=0x7fffd45b6e28, r_final=0x7fffd45b6e20, r_geometry_set=0x7fffd45b6e30) at {SOURCE_DIR}/blender/source/blender/blenkernel/intern/DerivedMesh.cc:1254
#12 0x000000000389fdc7 in mesh_build_data (depsgraph=0x7ffff016db08, scene=0x7ffff5578c08, ob=0x7ffff4f53408, dataMask=0x7fffd45b6eb0, need_mapping=false) at {SOURCE_DIR}/blender/source/blender/blenkernel/intern/DerivedMesh.cc:1872
#13 0x00000000038a039f in makeDerivedMesh (depsgraph=0x7ffff016db08, scene=0x7ffff5578c08, ob=0x7ffff4f53408, em=0x0, dataMask=0x7fffd45b6f40) at {SOURCE_DIR}/blender/source/blender/blenkernel/intern/DerivedMesh.cc:2020
#14 0x00000000034d641e in BKE_object_handle_data_update (depsgraph=0x7ffff016db08, scene=0x7ffff5578c08, ob=0x7ffff4f53408) at {SOURCE_DIR}/blender/source/blender/blenkernel/intern/object_update.c:193
#15 0x00000000034d6dbc in BKE_object_eval_uber_data (depsgraph=0x7ffff016db08, scene=0x7ffff5578c08, ob=0x7ffff4f53408) at {SOURCE_DIR}/blender/source/blender/blenkernel/intern/object_update.c:385
#16 0x000000000af702bd in std::__invoke_impl<void, void (*&)(Depsgraph*, Scene*, Object*), Depsgraph*, Scene*&, Object*&> (__f=@0x7ffff4ecb520: 0x34d6d32 <BKE_object_eval_uber_data>) at /usr/include/c++/10.2.0/bits/invoke.h:60
#17 0x000000000af6e94a in std::__invoke<void (*&)(Depsgraph*, Scene*, Object*), Depsgraph*, Scene*&, Object*&> (__fn=@0x7ffff4ecb520: 0x34d6d32 <BKE_object_eval_uber_data>) at /usr/include/c++/10.2.0/bits/invoke.h:95
#18 0x000000000af6c96b 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=0x7ffff4ecb520, __args=...) at /usr/include/c++/10.2.0/functional:416
#19 0x000000000af6a508 in std::_Bind<void (*(std::_Placeholder<1>, Scene*, Object*))(Depsgraph*, Scene*, Object*)>::operator()<Depsgraph*, void>(Depsgraph*&&) (this=0x7ffff4ecb520) at /usr/include/c++/10.2.0/functional:499
#20 0x000000000af6765f in std::__invoke_impl<void, std::_Bind<void (*(std::_Placeholder<1>, Scene*, Object*))(Depsgraph*, Scene*, Object*)>&, Depsgraph*>(std::__invoke_other, std::_Bind<void (*(std::_Placeholder<1>, Scene*, Object*))(Depsgraph*, Scene*, Object*)>&, Depsgraph*&&) (__f=...) at /usr/include/c++/10.2.0/bits/invoke.h:60
#21 0x000000000af63e37 in std::__invoke_r<void, std::_Bind<void (*(std::_Placeholder<1>, Scene*, Object*))(Depsgraph*, Scene*, Object*)>&, Depsgraph*>(std::_Bind<void (*(std::_Placeholder<1>, Scene*, Object*))(Depsgraph*, Scene*, Object*)>&, Depsgraph*&&) (__fn=...) at /usr/include/c++/10.2.0/bits/invoke.h:110
#22 0x000000000af60f63 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=@0x7fffd45b7160: 0x7ffff016db08) at /usr/include/c++/10.2.0/bits/std_function.h:291
#23 0x000000000af3b333 in std::function<void (Depsgraph*)>::operator()(Depsgraph*) const (this=0x7fffefb2d2c8, __args#0=0x7ffff016db08) at /usr/include/c++/10.2.0/bits/std_function.h:622
#24 0x000000000af3a599 in blender::deg::(anonymous namespace)::evaluate_node (state=0x7fffffffdb30, operation_node=0x7fffefb2d208) at {SOURCE_DIR}/blender/source/blender/depsgraph/intern/eval/deg_eval.cc:113
#25 0x000000000af3a5df in blender::deg::(anonymous namespace)::deg_task_run_func (pool=0x7fffc1cee608, taskdata=0x7fffefb2d208) at {SOURCE_DIR}/blender/source/blender/depsgraph/intern/eval/deg_eval.cc:124
#26 0x000000000c3cd762 in Task::operator()() const::{lambda()#1}::operator()() const (__closure=0x7fffd45b72f0) at {SOURCE_DIR}/blender/source/blender/blenlib/intern/task_pool.cc:118
#27 0x000000000c3cdb8e in tbb::interface7::internal::delegated_function<Task::operator()() const::{lambda()#1} const, void>::operator()() const (this=0x7fffd45b7280) at {SOURCE_DIR}/lib/linux_centos7_x86_64/tbb/include/tbb/task_arena.h:93
#28 0x000000000399f3d5 in tbb::interface7::internal::isolate_within_arena(tbb::interface7::internal::delegate_base&, long) ()
#29 0x000000000c3cd93f in tbb::interface7::internal::isolate_impl<void, Task::operator()() const::{lambda()#1} const>(Task::operator()() const::{lambda()#1} const&) (f=...) at {SOURCE_DIR}/lib/linux_centos7_x86_64/tbb/include/tbb/task_arena.h:160
#30 0x000000000c3cd859 in tbb::interface7::this_task_arena::isolate<Task::operator()() const::{lambda()#1}>(Task::operator()() const::{lambda()#1} const&) (f=...) at {SOURCE_DIR}/lib/linux_centos7_x86_64/tbb/include/tbb/task_arena.h:395
#31 0x000000000c3cd795 in Task::operator() (this=0x7fffd22053c8) at {SOURCE_DIR}/blender/source/blender/blenlib/intern/task_pool.cc:118
#32 0x000000000c3cdb6a in tbb::internal::function_task<Task>::execute (this=0x7fffd22053c0) at {SOURCE_DIR}/lib/linux_centos7_x86_64/tbb/include/tbb/task.h:1048
#33 0x00000000039acad5 in tbb::internal::custom_scheduler<tbb::internal::IntelSchedulerTraits>::process_bypass_loop(tbb::internal::context_guard_helper<false>&, tbb::task*, long) ()
#34 0x00000000039acd8b in tbb::internal::custom_scheduler<tbb::internal::IntelSchedulerTraits>::local_wait_for_all(tbb::task&, tbb::task*) ()
#35 0x000000000399f0e7 in tbb::internal::arena::process(tbb::internal::generic_scheduler&) ()
#36 0x00000000039a6850 in tbb::internal::market::process(rml::job&) ()
#37 0x00000000039a885c in tbb::internal::rml::private_worker::run() ()
#38 0x00000000039a8a59 in tbb::internal::rml::private_worker::thread_routine(void*) ()
#39 0x00007ffff7f783e9 in start_thread () from /usr/lib/libpthread.so.0
#40 0x00007ffff7b61293 in clone () from /usr/lib/libc.so.6