diff options
author | Campbell Barton <ideasman42@gmail.com> | 2019-02-14 09:21:55 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2019-02-14 09:21:55 +0300 |
commit | 6074f62d1a099fc378aa25506a93321dba2d956b (patch) | |
tree | becbb4abdb6c9c9a047c1a6f5d5c94c53e56ff50 /source/blender/blenkernel/intern/mesh_convert.c | |
parent | caa8e7ff2894ed22ea436bc61b06fb292d844108 (diff) |
Fix T61353: Crash converting a curve to a mesh
This was caused by curves pointing to each other
creating a cyclic dependency.
While the dependency graph detects this, generating a mesh for render
recursively generates data which cashes in this case.
Add in a check to detect cyclic links.
Note, this bug exists in 2.7x too - but only crashes on render
since 2.7x didn't use 'for_render' when converting data.
Diffstat (limited to 'source/blender/blenkernel/intern/mesh_convert.c')
-rw-r--r-- | source/blender/blenkernel/intern/mesh_convert.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/blenkernel/intern/mesh_convert.c b/source/blender/blenkernel/intern/mesh_convert.c index 3e7d51716a1..ded0982c2da 100644 --- a/source/blender/blenkernel/intern/mesh_convert.c +++ b/source/blender/blenkernel/intern/mesh_convert.c @@ -896,7 +896,9 @@ Mesh *BKE_mesh_new_from_object( copycu->editnurb = tmpcu->editnurb; /* get updated display list, and convert to a mesh */ - BKE_displist_make_curveTypes_forRender(depsgraph, sce, tmpobj, &dispbase, &me_eval_final, false, render); + BKE_displist_make_curveTypes_forRender( + depsgraph, sce, tmpobj, &dispbase, &me_eval_final, false, render, + NULL); copycu->editfont = NULL; copycu->editnurb = NULL; |