diff options
author | Pablo Dobarro <pablodp606@gmail.com> | 2019-09-17 23:15:58 +0300 |
---|---|---|
committer | Pablo Dobarro <pablodp606@gmail.com> | 2019-09-18 17:40:58 +0300 |
commit | a1318d241553246c266410eb1ae4ba23e73179e1 (patch) | |
tree | 441a61ae1129e3892a7eb787df560d50d3f67fd8 /source/blender/blenkernel/intern/multires.c | |
parent | 4dbea85a3fdbc9726a1e23d4f7a9ab767a12ddbb (diff) |
Fix T69580: Smooth brush freezes on highpoly mesh
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D5831
Diffstat (limited to 'source/blender/blenkernel/intern/multires.c')
-rw-r--r-- | source/blender/blenkernel/intern/multires.c | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/source/blender/blenkernel/intern/multires.c b/source/blender/blenkernel/intern/multires.c index 82dfe68dbd6..6a5e31bd2a2 100644 --- a/source/blender/blenkernel/intern/multires.c +++ b/source/blender/blenkernel/intern/multires.c @@ -422,9 +422,22 @@ void multires_force_sculpt_rebuild(Object *ob) { multires_flush_sculpt_updates(ob); - if (ob && ob->sculpt && ob->sculpt->pbvh != NULL) { - BKE_pbvh_free(ob->sculpt->pbvh); - ob->sculpt->pbvh = NULL; + if (ob && ob->sculpt) { + SculptSession *ss = ob->sculpt; + if (ss->pbvh) { + BKE_pbvh_free(ss->pbvh); + ob->sculpt->pbvh = NULL; + } + + if (ss->pmap) { + MEM_freeN(ss->pmap); + ss->pmap = NULL; + } + + if (ss->pmap_mem) { + MEM_freeN(ss->pmap_mem); + ss->pmap_mem = NULL; + } } } |