diff options
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/editors/mesh/editmesh_utils.c | 4 | ||||
-rw-r--r-- | source/blender/editors/object/object_hook.c | 2 |
2 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/editors/mesh/editmesh_utils.c b/source/blender/editors/mesh/editmesh_utils.c index f102cf2b259..148398fca5c 100644 --- a/source/blender/editors/mesh/editmesh_utils.c +++ b/source/blender/editors/mesh/editmesh_utils.c @@ -380,6 +380,10 @@ void EDBM_mesh_make(ToolSettings *ts, Object *ob) EDBM_selectmode_flush(me->edit_btmesh); } +/** + * \warning This can invalidate the #DerivedMesh cache of other objects (for linked duplicates). + * Most callers should run #DAG_id_tag_update on \a ob, see: T46738. + */ void EDBM_mesh_load(Object *ob) { Mesh *me = ob->data; diff --git a/source/blender/editors/object/object_hook.c b/source/blender/editors/object/object_hook.c index 7b7f91b974d..03984b7a528 100644 --- a/source/blender/editors/object/object_hook.c +++ b/source/blender/editors/object/object_hook.c @@ -318,6 +318,8 @@ static bool object_hook_index_array(Scene *scene, Object *obedit, EDBM_mesh_load(obedit); EDBM_mesh_make(scene->toolsettings, obedit); + DAG_id_tag_update(&obedit->id, 0); + em = me->edit_btmesh; EDBM_mesh_normals_update(em); |