diff options
author | Asad-ullah Khan <kh4n> | 2020-04-03 03:35:25 +0300 |
---|---|---|
committer | Brecht Van Lommel <brecht@blender.org> | 2020-04-03 14:13:26 +0300 |
commit | 1a69384e76e2b1ab11c87a582eb2cdf26386ac59 (patch) | |
tree | b6c5b95e2471ef4c6629e293f5f71f672a49db47 /source/blender/editors/sculpt_paint/sculpt_undo.c | |
parent | 80513d85747c80f8c88800928885bae1f980580d (diff) |
Fix T74205: crash cancelling transfrom operation in sculpt mode
Differential Revision: https://developer.blender.org/D7018
Diffstat (limited to 'source/blender/editors/sculpt_paint/sculpt_undo.c')
-rw-r--r-- | source/blender/editors/sculpt_paint/sculpt_undo.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/source/blender/editors/sculpt_paint/sculpt_undo.c b/source/blender/editors/sculpt_paint/sculpt_undo.c index f6ed4fa21e0..f21bfe245dd 100644 --- a/source/blender/editors/sculpt_paint/sculpt_undo.c +++ b/source/blender/editors/sculpt_paint/sculpt_undo.c @@ -1290,6 +1290,11 @@ void SCULPT_undo_push_begin(const char *name) void SCULPT_undo_push_end(void) { + SCULPT_undo_push_end_ex(false); +} + +void SCULPT_undo_push_end_ex(const bool use_nested_undo) +{ UndoSculpt *usculpt = sculpt_undo_get_nodes(); SculptUndoNode *unode; @@ -1307,7 +1312,7 @@ void SCULPT_undo_push_end(void) /* We could remove this and enforce all callers run in an operator using 'OPTYPE_UNDO'. */ wmWindowManager *wm = G_MAIN->wm.first; - if (wm->op_undo_depth == 0) { + if (wm->op_undo_depth == 0 || use_nested_undo) { UndoStack *ustack = ED_undo_stack_get(); BKE_undosys_step_push(ustack, NULL, NULL); WM_file_tag_modified(); |