diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2010-07-07 18:28:22 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2010-07-07 18:28:22 +0400 |
commit | 358738c1aa6115aa7ccbd676166f943e4ee1dbd3 (patch) | |
tree | 05ed8ea9524102df1b2a08b363d31c27297b355e /source/blender/blenkernel/intern/image.c | |
parent | 8476d5a2b38a3462faee65b90b8b468e0135a5b7 (diff) |
Fix #22354, #22727, #22501: image window not display correct
renders with compositing and slots.
Diffstat (limited to 'source/blender/blenkernel/intern/image.c')
-rw-r--r-- | source/blender/blenkernel/intern/image.c | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/source/blender/blenkernel/intern/image.c b/source/blender/blenkernel/intern/image.c index 4daa38001bf..dc78dac04dd 100644 --- a/source/blender/blenkernel/intern/image.c +++ b/source/blender/blenkernel/intern/image.c @@ -1827,10 +1827,13 @@ static ImBuf *image_get_render_result(Image *ima, ImageUser *iuser, void **lock_ layer= (iuser)? iuser->layer: 0; pass= (iuser)? iuser->pass: 0; - if(from_render) + if(from_render) { RE_AcquireResultImage(re, &rres); - else if(ima->renders[ima->render_slot]) + } + else if(ima->renders[ima->render_slot]) { rres= *(ima->renders[ima->render_slot]); + rres.have_combined= rres.rectf != NULL; + } else memset(&rres, 0, sizeof(RenderResult)); @@ -1852,10 +1855,10 @@ static ImBuf *image_get_render_result(Image *ima, ImageUser *iuser, void **lock_ rectz= rres.rectz; dither= iuser->scene->r.dither_intensity; - /* get compo/seq result by default */ - if(rres.compo_seq && layer==0); + /* combined layer gets added as first layer */ + if(rres.have_combined && layer==0); else if(rres.layers.first) { - RenderLayer *rl= BLI_findlink(&rres.layers, layer-(rres.compo_seq?1:0)); + RenderLayer *rl= BLI_findlink(&rres.layers, layer-(rres.have_combined?1:0)); if(rl) { RenderPass *rpass; |