diff options
author | Bastien Montagne <montagne29@wanadoo.fr> | 2019-06-16 19:04:57 +0300 |
---|---|---|
committer | Bastien Montagne <montagne29@wanadoo.fr> | 2019-06-16 19:04:57 +0300 |
commit | 5767dcbe60c07cd9ef113e2f54eaad6981a47bce (patch) | |
tree | 893f3b11ebebd97b4e50b8ecce1ee5c5d006ec3c /source/blender/editors/transform | |
parent | b1b0781c1ed7148efc59287368f4b812a2a18c6e (diff) |
Fix T65809: Blender crash while using the Normal's "merge" option in edit mode.
Merge code will generate temp normal editing data for affected loops,
but since it will later (by setting some edges/faces to smooth) alter
and extend affected clnor spaces, it will also need temp normal editing
data for some other loops around those vertices...
Using those clnor editing data in that code is a bit of an abuse, but on
the other hand that struct stores exactly what we need.
So simply added an option to generate that editing data for all clnors
of affected vertices.
Diffstat (limited to 'source/blender/editors/transform')
-rw-r--r-- | source/blender/editors/transform/transform.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/source/blender/editors/transform/transform.c b/source/blender/editors/transform/transform.c index 9019b21997f..5b3f7d85b43 100644 --- a/source/blender/editors/transform/transform.c +++ b/source/blender/editors/transform/transform.c @@ -4784,7 +4784,7 @@ static void applyTrackball(TransInfo *t, const int UNUSED(mval[2])) static void storeCustomLNorValue(TransDataContainer *tc, BMesh *bm) { - BMLoopNorEditDataArray *lnors_ed_arr = BM_loop_normal_editdata_array_init(bm); + BMLoopNorEditDataArray *lnors_ed_arr = BM_loop_normal_editdata_array_init(bm, false); // BMLoopNorEditData *lnor_ed = lnors_ed_arr->lnor_editdata; tc->custom.mode.data = lnors_ed_arr; |