[Bf-blender-cvs] [03302fd] master: Fix T47120: CPU OSL Cycles crashes blender in latest GIT
Sergey Sharybin
noreply at git.blender.org
Wed Jan 6 19:11:16 CET 2016
Commit: 03302fd5edb154623f073e15a46e24f94445a3f4
Author: Sergey Sharybin
Date: Wed Jan 6 23:06:54 2016 +0500
Branches: master
https://developer.blender.org/rB03302fd5edb154623f073e15a46e24f94445a3f4
Fix T47120: CPU OSL Cycles crashes blender in latest GIT
The issue was caused by leaking error messages caused by
getting OIIO texture handle for built-in images.
===================================================================
M intern/cycles/kernel/osl/osl_services.cpp
===================================================================
diff --git a/intern/cycles/kernel/osl/osl_services.cpp b/intern/cycles/kernel/osl/osl_services.cpp
index 9ac8a3e..23c441e 100644
--- a/intern/cycles/kernel/osl/osl_services.cpp
+++ b/intern/cycles/kernel/osl/osl_services.cpp
@@ -858,8 +858,10 @@ bool OSLRenderServices::texture(ustring filename,
OSLThreadData *tdata = kg->osl_tdata;
OIIO::TextureSystem::Perthread *texture_thread_info =
tdata->oiio_thread_info;
- OIIO::TextureSystem::TextureHandle *texture_handle =
- ts->get_texture_handle(filename, texture_thread_info);
+ OIIO::TextureSystem::TextureHandle *texture_handle = NULL;
+ if(filename[0] != '@') {
+ texture_handle = ts->get_texture_handle(filename, texture_thread_info);
+ }
return texture(filename,
texture_handle,
texture_thread_info,
@@ -887,8 +889,10 @@ bool OSLRenderServices::texture3d(ustring filename,
OSLThreadData *tdata = kg->osl_tdata;
OIIO::TextureSystem::Perthread *texture_thread_info =
tdata->oiio_thread_info;
- OIIO::TextureSystem::TextureHandle *texture_handle =
- ts->get_texture_handle(filename, texture_thread_info);
+ OIIO::TextureSystem::TextureHandle *texture_handle = NULL;
+ if(filename[0] != '@') {
+ texture_handle = ts->get_texture_handle(filename, texture_thread_info);
+ }
return texture3d(filename,
texture_handle,
texture_thread_info,
More information about the Bf-blender-cvs
mailing list