Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2018-01-25 16:07:51 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2018-01-25 16:25:17 +0300
commit176c0c96c2dd9be39ad482c45535ed0e63a5ddad (patch)
tree88ad7f9e81df6f1920f1836a482a73375d6eb8cc /source/blender
parent43b0e61408248296192d60f71cce4f548cc8a674 (diff)
Fix T53874: OpenGL render problem with OpenEXR in 2.8 with float buffers.
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/render/intern/source/pipeline.c4
-rw-r--r--source/blender/render/intern/source/render_result.c6
2 files changed, 7 insertions, 3 deletions
diff --git a/source/blender/render/intern/source/pipeline.c b/source/blender/render/intern/source/pipeline.c
index ed610b4e4b7..f1dce4d0cfb 100644
--- a/source/blender/render/intern/source/pipeline.c
+++ b/source/blender/render/intern/source/pipeline.c
@@ -437,8 +437,6 @@ void RE_AcquireResultImage(Render *re, RenderResult *rr, const int view_id)
rr->rectz = rv->rectz;
rr->rect32 = rv->rect32;
- rr->have_combined = (rv->rectf != NULL);
-
/* active layer */
rl = render_get_active_layer(re, re->result);
@@ -839,7 +837,7 @@ void RE_InitState(Render *re, Render *source, RenderData *rd,
re->result = MEM_callocN(sizeof(RenderResult), "new render result");
re->result->rectx = re->rectx;
re->result->recty = re->recty;
- render_result_view_new(re->result, "new temporary view");
+ render_result_view_new(re->result, "");
}
if (re->r.scemode & R_VIEWPORT_PREVIEW)
diff --git a/source/blender/render/intern/source/render_result.c b/source/blender/render/intern/source/render_result.c
index 0499577726c..a3eeed2b144 100644
--- a/source/blender/render/intern/source/render_result.c
+++ b/source/blender/render/intern/source/render_result.c
@@ -80,6 +80,8 @@ static void render_result_views_free(RenderResult *res)
MEM_freeN(rv);
}
+
+ res->have_combined = false;
}
void render_result_free(RenderResult *res)
@@ -1356,6 +1358,8 @@ void RE_render_result_rect_from_ibuf(RenderResult *rr, RenderData *UNUSED(rd), I
RenderView *rv = RE_RenderViewGetById(rr, view_id);
if (ibuf->rect_float) {
+ rr->have_combined = true;
+
if (!rv->rectf)
rv->rectf = MEM_mallocN(4 * sizeof(float) * rr->rectx * rr->recty, "render_seq rectf");
@@ -1366,6 +1370,8 @@ void RE_render_result_rect_from_ibuf(RenderResult *rr, RenderData *UNUSED(rd), I
MEM_SAFE_FREE(rv->rect32);
}
else if (ibuf->rect) {
+ rr->have_combined = true;
+
if (!rv->rect32)
rv->rect32 = MEM_mallocN(sizeof(int) * rr->rectx * rr->recty, "render_seq rect");