diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-11-18 17:51:31 +0300 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2014-11-18 17:51:31 +0300 |
commit | 54c6a9fd49bf2bdd9de8775b615c174aa55c40cd (patch) | |
tree | ffff6b1e6b9cc3112362258e7364b48a4966792c /source/blender/editors/util | |
parent | 8e16c5294bf2b6b6c72ec9c6a2b8dcc9b79c4acd (diff) |
Make it possible to use preview/viewport render job kill without context
Diffstat (limited to 'source/blender/editors/util')
-rw-r--r-- | source/blender/editors/util/undo.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/source/blender/editors/util/undo.c b/source/blender/editors/util/undo.c index 6c0efad6f26..104414d7f81 100644 --- a/source/blender/editors/util/undo.c +++ b/source/blender/editors/util/undo.c @@ -47,6 +47,7 @@ #include "BKE_blender.h" #include "BKE_context.h" #include "BKE_global.h" +#include "BKE_main.h" #include "BKE_screen.h" #include "ED_armature.h" @@ -124,6 +125,7 @@ static int ed_undo_step(bContext *C, int step, const char *undoname) { wmWindowManager *wm = CTX_wm_manager(C); wmWindow *win = CTX_wm_window(C); + Main *bmain = CTX_data_main(C); Scene *scene = CTX_data_scene(C); Object *obedit = CTX_data_edit_object(C); Object *obact = CTX_data_active_object(C); @@ -146,7 +148,7 @@ static int ed_undo_step(bContext *C, int step, const char *undoname) if ((obact && (obact->mode & OB_MODE_TEXTURE_PAINT)) || (sima->mode == SI_MODE_PAINT)) { if (!ED_undo_paint_step(C, UNDO_PAINT_IMAGE, step, undoname) && undoname) { if (U.uiflag & USER_GLOBALUNDO) { - ED_viewport_render_kill_jobs(C, true); + ED_viewport_render_kill_jobs(wm, bmain, true); BKE_undo_name(C, undoname); } } @@ -199,7 +201,7 @@ static int ed_undo_step(bContext *C, int step, const char *undoname) /* for example, texface stores image pointers */ undo_editmode_clear(); - ED_viewport_render_kill_jobs(C, true); + ED_viewport_render_kill_jobs(wm, bmain, true); if (undoname) BKE_undo_name(C, undoname); @@ -379,7 +381,7 @@ int ED_undo_operator_repeat(bContext *C, struct wmOperator *op) { int retval; - ED_viewport_render_kill_jobs(C, true); + ED_viewport_render_kill_jobs(wm, CTX_data_main(C), true); if (G.debug & G_DEBUG) printf("redo_cb: operator redo %s\n", op->type->name); @@ -583,7 +585,7 @@ static int undo_history_exec(bContext *C, wmOperator *op) ED_undo_paint_step_num(C, UNDO_PAINT_IMAGE, item ); } else { - ED_viewport_render_kill_jobs(C, true); + ED_viewport_render_kill_jobs(CTX_wm_manager(C), CTX_data_main(C), true); BKE_undo_number(C, item); WM_event_add_notifier(C, NC_SCENE | ND_LAYER_CONTENT, CTX_data_scene(C)); } |