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
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2020-06-02 16:45:51 +0300
committerCampbell Barton <ideasman42@gmail.com>2020-06-02 16:45:51 +0300
commit0a00fbd265ac75e2d900f34570a6842e7ea70a2e (patch)
treee36bf7e0ca41aaea49fedba151c766bc85c70d3e
parentae2f21f3783563eec3e2f8b74aa22acc74ac16b7 (diff)
Fix T66967: skin modifier crash scaling skin radius to zero
-rw-r--r--source/blender/modifiers/intern/MOD_skin.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/source/blender/modifiers/intern/MOD_skin.c b/source/blender/modifiers/intern/MOD_skin.c
index ec7c2b5b1a4..15ed2f36439 100644
--- a/source/blender/modifiers/intern/MOD_skin.c
+++ b/source/blender/modifiers/intern/MOD_skin.c
@@ -922,7 +922,13 @@ static Mesh *subdivide_base(Mesh *orig)
u = e->v1;
radrat = (half_v2(outnode[e->v2].radius) / half_v2(outnode[e->v1].radius));
- radrat = (radrat + 1) / 2;
+ if (isfinite(radrat)) {
+ radrat = (radrat + 1) / 2;
+ }
+ else {
+ /* Happens when skin is scaled to zero. */
+ radrat = 1.0f;
+ }
/* Add vertices and edge segments */
for (j = 0; j < edge_subd[i]; j++, v++, outedge++) {