diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-01-15 18:53:35 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-01-15 18:53:42 +0300 |
commit | e4c78436c6a3bef0d30ff656a4758295f58b5ae4 (patch) | |
tree | 59ffdc8a8c8db4ccf7bda6e30c0d98852fdb7b51 /source/blender/editors/object/object_bake_api.c | |
parent | 2f2272f71a292ac4a74d3452e095ea80bb83d0d9 (diff) |
Fix T60246: crash with Cycles baking while in edit mode.
Diffstat (limited to 'source/blender/editors/object/object_bake_api.c')
-rw-r--r-- | source/blender/editors/object/object_bake_api.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/source/blender/editors/object/object_bake_api.c b/source/blender/editors/object/object_bake_api.c index fca3cc3e9f6..81715890f0a 100644 --- a/source/blender/editors/object/object_bake_api.c +++ b/source/blender/editors/object/object_bake_api.c @@ -635,9 +635,15 @@ static size_t initialize_internal_images(BakeImages *bake_images, ReportList *re /* create new mesh with edit mode changes and modifiers applied */ static Mesh *bake_mesh_new_from_object(Depsgraph *depsgraph, Main *bmain, Scene *scene, Object *ob) { - ED_object_editmode_load(bmain, ob); + bool apply_modifiers = false; - Mesh *me = BKE_mesh_new_from_object(depsgraph, bmain, scene, ob, 1, 0); + /* Mesh is already updated and has modifiers applied. */ + if (ob->type != OB_MESH) { + ED_object_editmode_load(bmain, ob); + apply_modifiers = true; + } + + Mesh *me = BKE_mesh_new_from_object(depsgraph, bmain, scene, ob, apply_modifiers, 0); if (me->flag & ME_AUTOSMOOTH) { BKE_mesh_split_faces(me, true); } |