diff options
author | Jeroen Bakker <j.bakker@atmind.nl> | 2019-07-17 17:06:44 +0300 |
---|---|---|
committer | Jeroen Bakker <j.bakker@atmind.nl> | 2019-07-17 17:24:00 +0300 |
commit | f17e2f8dac3a392823ed7dbbcdea3f88bff20f75 (patch) | |
tree | d53994b446770cad4288b85edf50a7faa36a1537 /source | |
parent | 2e15b7208941f387530ffe3c07ad38c047c00abd (diff) |
Fix T67127: Crash Missing DEG tag update mask layer
When ng mask layer operations (add, remove, move) the
original mask was not tagged to be updated resulting
in missing data on the copy. The Masking function
assumes that the copy and the original is always
structured the same.
Reviewed By: brecht, sergey
Differential Revision: https://developer.blender.org/D5283
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/editors/mask/mask_ops.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/source/blender/editors/mask/mask_ops.c b/source/blender/editors/mask/mask_ops.c index a205f6878e3..8e4efddd8a7 100644 --- a/source/blender/editors/mask/mask_ops.c +++ b/source/blender/editors/mask/mask_ops.c @@ -441,6 +441,7 @@ static int masklay_new_exec(bContext *C, wmOperator *op) mask->masklay_act = mask->masklay_tot - 1; WM_event_add_notifier(C, NC_MASK | NA_EDITED, mask); + DEG_id_tag_update(&mask->id, ID_RECALC_COPY_ON_WRITE); return OPERATOR_FINISHED; } @@ -474,6 +475,7 @@ static int masklay_remove_exec(bContext *C, wmOperator *UNUSED(op)) BKE_mask_layer_remove(mask, masklay); WM_event_add_notifier(C, NC_MASK | NA_EDITED, mask); + DEG_id_tag_update(&mask->id, ID_RECALC_COPY_ON_WRITE); } return OPERATOR_FINISHED; @@ -2206,6 +2208,7 @@ static int mask_layer_move_exec(bContext *C, wmOperator *op) } WM_event_add_notifier(C, NC_MASK | NA_EDITED, mask); + DEG_id_tag_update(&mask->id, ID_RECALC_COPY_ON_WRITE); return OPERATOR_FINISHED; } |