diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-04-25 20:24:38 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-04-25 20:24:38 +0400 |
commit | 461a7c5c8185d0504c63ddc8de0b2c765e72be4b (patch) | |
tree | 311ab2d97d6612d4fb1720c5179abb672428412d /source | |
parent | 7bedbde536e14aa8a4931ba1d560f38dc3326b8f (diff) |
fix [#26993] Edge Split Crash
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/modifiers/intern/MOD_edgesplit.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/source/blender/modifiers/intern/MOD_edgesplit.c b/source/blender/modifiers/intern/MOD_edgesplit.c index c7c2f3edc8a..25a8625b342 100644 --- a/source/blender/modifiers/intern/MOD_edgesplit.c +++ b/source/blender/modifiers/intern/MOD_edgesplit.c @@ -942,10 +942,13 @@ static void propagate_split(SmoothEdge *edge, SmoothVert *vert, /* vert has more than one fan of faces attached; split it */ vert2 = smoothvert_copy(vert, mesh); - /* replace vert with its copy in visited_faces */ - repdata.find = vert; - repdata.replace = vert2; - BLI_linklist_apply(visited_faces, face_replace_vert, &repdata); + /* fails in rare cases, see [#26993] */ + if(vert2) { + /* replace vert with its copy in visited_faces */ + repdata.find = vert; + repdata.replace = vert2; + BLI_linklist_apply(visited_faces, face_replace_vert, &repdata); + } } } else { /* edge is not loose, so it must be sharp; split it */ |