From 522dcc54af3564d30cf0db3ec277a14c6c7046e6 Mon Sep 17 00:00:00 2001 From: Erik Date: Mon, 20 Jun 2022 20:12:44 +0200 Subject: Fix T94969: Crash in Volume to Mesh with 0 voxels Checks if voxel amount or -size is <= 0 and if so, returns early. Differential Revision: https://developer.blender.org/D15241 --- source/blender/nodes/geometry/nodes/node_geo_volume_to_mesh.cc | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/source/blender/nodes/geometry/nodes/node_geo_volume_to_mesh.cc b/source/blender/nodes/geometry/nodes/node_geo_volume_to_mesh.cc index 8770fa2b74b..e1d1c67b8c8 100644 --- a/source/blender/nodes/geometry/nodes/node_geo_volume_to_mesh.cc +++ b/source/blender/nodes/geometry/nodes/node_geo_volume_to_mesh.cc @@ -153,6 +153,16 @@ static Mesh *create_mesh_from_volume(GeometrySet &geometry_set, GeoNodeExecParam } const bke::VolumeToMeshResolution resolution = get_resolution_param(params); + + if (resolution.mode == VOLUME_TO_MESH_RESOLUTION_MODE_VOXEL_SIZE && + resolution.settings.voxel_size <= 0.0f) { + return nullptr; + } + if (resolution.mode == VOLUME_TO_MESH_RESOLUTION_MODE_VOXEL_AMOUNT && + resolution.settings.voxel_amount <= 0) { + return nullptr; + } + const Main *bmain = DEG_get_bmain(params.depsgraph()); BKE_volume_load(volume, bmain); -- cgit v1.2.3