Commit: 3cc2a9b934d072fdd817863aa8e93e2416f5c804 Author: Philipp Oeser Date: Fri Jun 22 13:44:12 2018 +0200 Branches: master https://developer.blender.org/rB3cc2a9b934d072fdd817863aa8e93e2416f5c804
Fix T55581: kill running (render) jobs when deleting a scene also fixed passing WM_JOB_TYPE_ANY to WM_jobs_kill_type() Reviewed By: brecht Differential Revision: https://developer.blender.org/D3498 =================================================================== M source/blender/editors/screen/screen_edit.c M source/blender/windowmanager/intern/wm_jobs.c =================================================================== diff --git a/source/blender/editors/screen/screen_edit.c b/source/blender/editors/screen/screen_edit.c index 82552c35786..131b509df5a 100644 --- a/source/blender/editors/screen/screen_edit.c +++ b/source/blender/editors/screen/screen_edit.c @@ -1447,6 +1447,10 @@ bool ED_screen_delete_scene(bContext *C, Scene *scene) Main *bmain = CTX_data_main(C); Scene *newscene; + // kill running jobs + wmWindowManager *wm = CTX_wm_manager(C); + WM_jobs_kill_type(wm, scene, WM_JOB_TYPE_ANY); + if (scene->id.prev) newscene = scene->id.prev; else if (scene->id.next) diff --git a/source/blender/windowmanager/intern/wm_jobs.c b/source/blender/windowmanager/intern/wm_jobs.c index 3a4195ae1ae..dd9e7edf413 100644 --- a/source/blender/windowmanager/intern/wm_jobs.c +++ b/source/blender/windowmanager/intern/wm_jobs.c @@ -500,7 +500,7 @@ void WM_jobs_kill_type(struct wmWindowManager *wm, void *owner, int job_type) next_job = wm_job->next; if (!owner || wm_job->owner == owner) - if (wm_job->job_type == job_type) + if (job_type == WM_JOB_TYPE_ANY || wm_job->job_type == job_type) wm_jobs_kill_job(wm, wm_job); } } _______________________________________________ Bf-blender-cvs mailing list Bf-blender-cvs@blender.org https://lists.blender.org/mailman/listinfo/bf-blender-cvs