diff options
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/modifiers/intern/MOD_skin.c | 8 |
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++) { |