diff options
author | Andrea Weikert <elubie@gmx.net> | 2010-03-10 22:30:20 +0300 |
---|---|---|
committer | Andrea Weikert <elubie@gmx.net> | 2010-03-10 22:30:20 +0300 |
commit | c0b3ab6ceb4ca77ec7b05bd5bed090a15705303a (patch) | |
tree | 256463f28b31ef4d2edde870996afc27d0402cb7 /source/blender/windowmanager/intern/wm_jobs.c | |
parent | 222dc9cf132c6cc2f4c3ca6c14fe5dffb5737d7d (diff) |
filebrowser:
* move own thread handling for thumbnails to WM_jobs
* cleanup of thumbnail creation code
* added function to kill the job, which actually allows thread to terminate gracefully
vc9 projectfiles:
* fixed some missing includes for release target!
Diffstat (limited to 'source/blender/windowmanager/intern/wm_jobs.c')
-rw-r--r-- | source/blender/windowmanager/intern/wm_jobs.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/source/blender/windowmanager/intern/wm_jobs.c b/source/blender/windowmanager/intern/wm_jobs.c index 6613598a102..cb229c301b2 100644 --- a/source/blender/windowmanager/intern/wm_jobs.c +++ b/source/blender/windowmanager/intern/wm_jobs.c @@ -303,6 +303,20 @@ void WM_jobs_stop(wmWindowManager *wm, void *owner) steve->stop= 1; } +/* actually terminate thread and job timer */ +void WM_jobs_kill(wmWindowManager *wm, void *owner) +{ + wmJob *steve; + + for(steve= wm->jobs.first; steve; steve= steve->next) + if(steve->owner==owner) + break; + + if (steve) + wm_jobs_kill_job(wm, steve); +} + + /* kill job entirely, also removes timer itself */ void wm_jobs_timer_ended(wmWindowManager *wm, wmTimer *wt) { |