diff options
author | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-05-15 01:42:51 +0300 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@gmail.com> | 2019-05-15 01:59:31 +0300 |
commit | 4e46ed37fc5939d733001ba8ce17bd46e500839b (patch) | |
tree | 3c7a4c9f1d4a554dc885ebf707c4b01b23996fa7 /intern/cycles/blender/blender_session.cpp | |
parent | c29ed65f03c480022ec8d4b98355ffc0ca82fb80 (diff) |
Fix T64618: Cycles crash with point density texture on Windows
A better solution would be to not use the callback mechanism anymore for
cases like this where the dependency graph will free volume data, but
that would be a bigger refactor.
Diffstat (limited to 'intern/cycles/blender/blender_session.cpp')
-rw-r--r-- | intern/cycles/blender/blender_session.cpp | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp index c50dbb6ba55..11b6a38c195 100644 --- a/intern/cycles/blender/blender_session.cpp +++ b/intern/cycles/blender/blender_session.cpp @@ -1440,7 +1440,12 @@ void BlenderSession::builtin_images_load() { /* Force builtin images to be loaded along with Blender data sync. This * is needed because we may be reading from depsgraph evaluated data which - * can be freed by Blender before Cycles reads it. */ + * can be freed by Blender before Cycles reads it. + * + * TODO: the assumption that no further access to builtin image data will + * happen is really weak, and likely to break in the future. We should find + * a better solution to hand over the data directly to the image manager + * instead of through callbacks whose timing is difficult to control. */ ImageManager *manager = session->scene->image_manager; Device *device = session->device; manager->device_load_builtin(device, session->scene, session->progress); |