diff options
author | Campbell Barton <ideasman42@gmail.com> | 2011-11-29 22:18:56 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2011-11-29 22:18:56 +0400 |
commit | faa022563d90a2542409dd43f5baa3f1280f44a0 (patch) | |
tree | 20dfab2000f4181464b2dce5f9fcedec862f5db3 /source/blender/editors/util | |
parent | 198113b232a407a1fcd5282b998564f656df9680 (diff) | |
parent | 1ec4ceac7e203dd5fbb162933134d4c352cea5f7 (diff) |
svn merge ^/trunk/blender -r42245:42261
Diffstat (limited to 'source/blender/editors/util')
-rw-r--r-- | source/blender/editors/util/undo.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/source/blender/editors/util/undo.c b/source/blender/editors/util/undo.c index 527537b5efb..f0055bd6008 100644 --- a/source/blender/editors/util/undo.c +++ b/source/blender/editors/util/undo.c @@ -125,6 +125,12 @@ static int ed_undo_step(bContext *C, int step, const char *undoname) Object *obact= CTX_data_active_object(C); ScrArea *sa= CTX_wm_area(C); + /* undo during jobs are running can easily lead to freeing data using by jobs, + or they can just lead to freezing job in some other cases */ + if(WM_jobs_has_running(CTX_wm_manager(C))) { + return OPERATOR_CANCELLED; + } + /* grease pencil can be can be used in plenty of spaces, so check it first */ if(ED_gpencil_session_active()) { return ED_undo_gpencil_step(C, step, undoname); |