diff options
author | mano-wii <germano.costa@ig.com.br> | 2019-10-15 20:59:16 +0300 |
---|---|---|
committer | mano-wii <germano.costa@ig.com.br> | 2019-10-15 20:59:30 +0300 |
commit | cfb6ffd48f77c338628c9546accbafd5c5b4175c (patch) | |
tree | 8b327a15903f02897b1ffbf3a90e69f32df3c1da /source/blender | |
parent | 2a9b162d94576d0182661179cf0500cfbc85236f (diff) |
Fix T70386: Crash when snapping to edges in specific situations
The callbacks get elements through indexes,
so make sure they're not "dirty".
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/editors/transform/transform_snap_object.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/source/blender/editors/transform/transform_snap_object.c b/source/blender/editors/transform/transform_snap_object.c index b31816b2605..f35a2808f22 100644 --- a/source/blender/editors/transform/transform_snap_object.c +++ b/source/blender/editors/transform/transform_snap_object.c @@ -2368,6 +2368,7 @@ static short snapEditMesh(SnapObjectContext *sctx, if (treedata_vert && (snapdata->snap_to_flag & SCE_SNAP_MODE_VERTEX)) { BM_mesh_elem_table_ensure(em->bm, BM_VERT); + BM_mesh_elem_index_ensure(em->bm, BM_VERT); BLI_bvhtree_find_nearest_projected(treedata_vert->tree, lpmat, snapdata->win_size, @@ -2383,6 +2384,7 @@ static short snapEditMesh(SnapObjectContext *sctx, int last_index = nearest.index; nearest.index = -1; BM_mesh_elem_table_ensure(em->bm, BM_EDGE | BM_VERT); + BM_mesh_elem_index_ensure(em->bm, BM_EDGE | BM_VERT); BLI_bvhtree_find_nearest_projected(treedata_edge->tree, lpmat, snapdata->win_size, |