diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-10-19 13:57:55 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2009-10-19 13:57:55 +0400 |
commit | 8802bea7a07ab0e29f5b4bcbf7b6074eced21a1b (patch) | |
tree | 51a8440b86f9bb3824e3cdbde78081ec3341aa7e /source/blender/windowmanager/intern/wm_jobs.c | |
parent | 256348eb6b56ef77c124080dcc14203c77901fe2 (diff) |
Fix for a preview render crash that happened sometimes, when
the thread was marked as ready while it had not started yet.
Diffstat (limited to 'source/blender/windowmanager/intern/wm_jobs.c')
-rw-r--r-- | source/blender/windowmanager/intern/wm_jobs.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/source/blender/windowmanager/intern/wm_jobs.c b/source/blender/windowmanager/intern/wm_jobs.c index 9e16ce4082f..498306484e9 100644 --- a/source/blender/windowmanager/intern/wm_jobs.c +++ b/source/blender/windowmanager/intern/wm_jobs.c @@ -192,7 +192,6 @@ static void *do_job_thread(void *job_v) { wmJob *steve= job_v; - steve->stop= steve->ready= 0; steve->startjob(steve->run_customdata, &steve->stop, &steve->do_update); steve->ready= 1; @@ -245,6 +244,9 @@ void WM_jobs_start(wmWindowManager *wm, wmJob *steve) if(steve->initjob) steve->initjob(steve->run_customdata); + steve->stop= 0; + steve->ready= 0; + BLI_init_threads(&steve->threads, do_job_thread, 1); BLI_insert_thread(&steve->threads, steve); |