diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-04-26 17:47:57 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2013-04-26 17:47:57 +0400 |
commit | f0fb5db329ff7588b3545a0b5f6c50a8c9c08127 (patch) | |
tree | 40d2cb3c8435256cce6319afe08b8109e4249106 /source/blender/editors/render | |
parent | eda757d4c8df59ae75de54506e810a3abb783107 (diff) |
Fix preview render not starting in some cases, now starts the preview rendering
job if no render result is found and no preview render job is already running.
Diffstat (limited to 'source/blender/editors/render')
-rw-r--r-- | source/blender/editors/render/render_preview.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/source/blender/editors/render/render_preview.c b/source/blender/editors/render/render_preview.c index e8c578cb685..2e88c243df6 100644 --- a/source/blender/editors/render/render_preview.c +++ b/source/blender/editors/render/render_preview.c @@ -572,9 +572,6 @@ static int ed_preview_draw_rect(ScrArea *sa, int split, int first, rcti *rect, r } } } - else { - ok = 1; - } RE_ReleaseResultImage(re); @@ -584,6 +581,7 @@ static int ed_preview_draw_rect(ScrArea *sa, int split, int first, rcti *rect, r void ED_preview_draw(const bContext *C, void *idp, void *parentp, void *slotp, rcti *rect) { if (idp) { + wmWindowManager *wm = CTX_wm_manager(C); ScrArea *sa = CTX_wm_area(C); ID *id = (ID *)idp; ID *parent = (ID *)parentp; @@ -609,13 +607,11 @@ void ED_preview_draw(const bContext *C, void *idp, void *parentp, void *slotp, r if (ok) *rect = newrect; - /* check for spacetype... */ - if (sbuts->spacetype == SPACE_BUTS && sbuts->preview) { + /* start a new preview render job if signalled through sbuts->preview, + * or if no render result was found and no preview render job is running */ + if ((sbuts->spacetype == SPACE_BUTS && sbuts->preview) || + (!ok && !WM_jobs_test(wm, sa, WM_JOB_TYPE_RENDER_PREVIEW))) { sbuts->preview = 0; - ok = 0; - } - - if (ok == 0) { ED_preview_shader_job(C, sa, id, parent, slot, newx, newy, PR_BUTS_RENDER); } } |