Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorPablo Dobarro <pablodp606@gmail.com>2020-08-24 19:26:28 +0300
committerPablo Dobarro <pablodp606@gmail.com>2020-08-24 19:27:49 +0300
commit1bced5884c3dd80c74dfdcf621eae3b90d32a662 (patch)
treedf61de1fce2b960cf74f1490f70cfa4e3ecb7958 /source
parentdc74d60915e550d3e8b3665afc5435a1d752614b (diff)
Fix T80039: Do not subdivide with Multires is mesh has no faces
This skips the subdivision operation if the mesh has no loops, avoiding the crash. Reviewed By: sergey Maniphest Tasks: T80039 Differential Revision: https://developer.blender.org/D8696
Diffstat (limited to 'source')
-rw-r--r--source/blender/blenkernel/intern/multires_reshape.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/multires_reshape.c b/source/blender/blenkernel/intern/multires_reshape.c
index 64cc9130e25..f9383a46be0 100644
--- a/source/blender/blenkernel/intern/multires_reshape.c
+++ b/source/blender/blenkernel/intern/multires_reshape.c
@@ -189,6 +189,12 @@ void multiresModifier_subdivide_to_level(struct Object *object,
}
Mesh *coarse_mesh = object->data;
+ if (coarse_mesh->totloop == 0) {
+ /* If there are no loops in the mesh inplies there is no CD_MDISPS as well. So can early output
+ * from here as there is nothing to subdivide. */
+ return;
+ }
+
MultiresReshapeContext reshape_context;
/* There was no multires at all, all displacement is at 0. Can simply make sure all mdisps grids