diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-11-28 23:57:29 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2012-11-28 23:57:29 +0400 |
commit | bb0195e0396a66c40a03e9f9c6a87c9b8a5ecc47 (patch) | |
tree | 99de3e05da02eb9761592eed6a635106610991c9 /intern | |
parent | 777449029b4f40b676a19d8a12228650f49c26c2 (diff) |
Fix #33337: cycles crash with progressive refine and multiple render layers.
Diffstat (limited to 'intern')
-rw-r--r-- | intern/cycles/render/session.cpp | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/intern/cycles/render/session.cpp b/intern/cycles/render/session.cpp index 003b722b5a5..1d1a3d54893 100644 --- a/intern/cycles/render/session.cpp +++ b/intern/cycles/render/session.cpp @@ -637,6 +637,15 @@ void Session::reset(BufferParams& buffer_params, int samples) reset_gpu(buffer_params, samples); else reset_cpu(buffer_params, samples); + + if(params.progressive_refine) { + thread_scoped_lock buffers_lock(buffers_mutex); + + foreach(RenderBuffers *buffers, tile_buffers) + delete buffers; + + tile_buffers.clear(); + } } void Session::set_samples(int samples) |