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
path: root/intern
diff options
context:
space:
mode:
authorBrecht Van Lommel <brechtvanlommel@gmail.com>2019-06-07 22:02:57 +0300
committerBrecht Van Lommel <brechtvanlommel@gmail.com>2019-06-07 22:07:23 +0300
commit424566239fe97c268061e8b375029b59a5ea010f (patch)
tree37be5e6557f7fd25448304800f9f645084621e7d /intern
parent4fb441517251eb4263e282bae609db9464d43943 (diff)
Fix T62121: Cycles crash with viewport render and smoke/pointclouds
Diffstat (limited to 'intern')
-rw-r--r--intern/cycles/blender/blender_session.cpp11
1 files changed, 6 insertions, 5 deletions
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp
index bb7c750078f..38d2f3f64e2 100644
--- a/intern/cycles/blender/blender_session.cpp
+++ b/intern/cycles/blender/blender_session.cpp
@@ -894,21 +894,22 @@ void BlenderSession::synchronize(BL::Depsgraph &b_depsgraph_)
else
sync->sync_camera(b_render, b_camera_override, width, height, "");
- builtin_images_load();
-
- /* unlock */
- session->scene->mutex.unlock();
-
/* reset if needed */
if (scene->need_reset()) {
BufferParams buffer_params = BlenderSync::get_buffer_params(
b_render, b_v3d, b_rv3d, scene->camera, width, height);
session->reset(buffer_params, session_params.samples);
+ /* After session reset, so device is not accessing image data anymore. */
+ builtin_images_load();
+
/* reset time */
start_resize_time = 0.0;
}
+ /* unlock */
+ session->scene->mutex.unlock();
+
/* Start rendering thread, if it's not running already. Do this
* after all scene data has been synced at least once. */
session->start();