[Bf-blender-cvs] [7578791ce8d] temp_cryptomatte: Cycles: Fixed Cryptomatte crash when some RenderLayers use Cryptomattes and some don't

Stefan Werner noreply at git.blender.org
Mon Nov 6 16:56:53 CET 2017


Commit: 7578791ce8d4df79fc9cf8fc3deffdb75bae76d4
Author: Stefan Werner
Date:   Mon Nov 6 14:49:03 2017 +0100
Branches: temp_cryptomatte
https://developer.blender.org/rB7578791ce8d4df79fc9cf8fc3deffdb75bae76d4

Cycles: Fixed Cryptomatte crash when some RenderLayers use Cryptomattes and some don't

The kernel level pass_aov array was not re-initialised properly and kept the info from the previous RenderLayer instead

===================================================================

M	intern/cycles/render/film.cpp

===================================================================

diff --git a/intern/cycles/render/film.cpp b/intern/cycles/render/film.cpp
index b6911bdf94b..a3a251405d4 100644
--- a/intern/cycles/render/film.cpp
+++ b/intern/cycles/render/film.cpp
@@ -430,6 +430,7 @@ void Film::device_update(Device *device, DeviceScene *dscene, Scene *scene)
 	kfilm->pass_flag = 0;
 	kfilm->pass_stride = 0;
 	kfilm->use_light_pass = use_light_visibility || use_sample_clamp;
+	::memset(kfilm->pass_aov, 0, sizeof(kfilm->pass_aov));
 
 	for(size_t i = 0; i < passes.passes.size(); i++) {
 		Pass& pass = passes.passes[i];



More information about the Bf-blender-cvs mailing list