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 <brecht@blender.org>2021-01-20 15:27:27 +0300
committerBrecht Van Lommel <brecht@blender.org>2021-01-20 16:59:23 +0300
commit1f691050e5eb1b59676d6540e712357086d2218c (patch)
tree9318c36a59dc5ca2e5f66afe382f3b0d60d80560
parent10d2cbfa369a512730a53192ccfe2473c9d96035 (diff)
Fix T84539: cryptomatte metadata lost when using save buffers option
-rw-r--r--source/blender/render/intern/render_result.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/blender/render/intern/render_result.c b/source/blender/render/intern/render_result.c
index 1ed894751ce..f135adc9f05 100644
--- a/source/blender/render/intern/render_result.c
+++ b/source/blender/render/intern/render_result.c
@@ -1229,6 +1229,10 @@ void render_result_exr_file_begin(Render *re, RenderEngine *engine)
/* end write of exr tile file, read back first sample */
void render_result_exr_file_end(Render *re, RenderEngine *engine)
{
+ /* Preserve stamp data. */
+ struct StampData *stamp_data = re->result->stamp_data;
+ re->result->stamp_data = NULL;
+
/* Close EXR files. */
for (RenderResult *rr = re->result; rr; rr = rr->next) {
LISTBASE_FOREACH (RenderLayer *, rl, &rr->layers) {
@@ -1243,6 +1247,7 @@ void render_result_exr_file_end(Render *re, RenderEngine *engine)
BLI_rw_mutex_lock(&re->resultmutex, THREAD_LOCK_WRITE);
render_result_free_list(&re->fullresult, re->result);
re->result = render_result_new(re, &re->disprect, RR_USE_MEM, RR_ALL_LAYERS, RR_ALL_VIEWS);
+ re->result->stamp_data = stamp_data;
BLI_rw_mutex_unlock(&re->resultmutex);
LISTBASE_FOREACH (RenderLayer *, rl, &re->result->layers) {