diff options
-rw-r--r-- | source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c b/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c index 464b7b8ad2e..7ed1691992f 100644 --- a/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c +++ b/source/blender/editors/sculpt_paint/paint_vertex_weight_ops.c @@ -692,13 +692,15 @@ static int paint_weight_gradient_modal(bContext *C, wmOperator *op, const wmEven if (ret & OPERATOR_CANCELLED) { Object *ob = CTX_data_active_object(C); - Mesh *me = ob->data; - if (vert_cache->wpp.wpaint_prev) { - BKE_defvert_array_free_elems(me->dvert, me->totvert); - BKE_defvert_array_copy(me->dvert, vert_cache->wpp.wpaint_prev, me->totvert); - wpaint_prev_destroy(&vert_cache->wpp); + if (vert_cache != NULL) { + Mesh *me = ob->data; + if (vert_cache->wpp.wpaint_prev) { + BKE_defvert_array_free_elems(me->dvert, me->totvert); + BKE_defvert_array_copy(me->dvert, vert_cache->wpp.wpaint_prev, me->totvert); + wpaint_prev_destroy(&vert_cache->wpp); + } + MEM_freeN(vert_cache); } - MEM_freeN(vert_cache); DEG_id_tag_update(&ob->id, OB_RECALC_DATA); WM_event_add_notifier(C, NC_OBJECT | ND_DRAW, ob); |