diff options
author | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2011-12-28 23:42:08 +0400 |
---|---|---|
committer | Brecht Van Lommel <brechtvanlommel@pandora.be> | 2011-12-28 23:42:08 +0400 |
commit | c9830549eafc97f40b40de42fe43c38e512d3048 (patch) | |
tree | ee5668cf743a23e1f07d5cda2144aba6c54ccc98 | |
parent | fe2131367b3f1ca1f974d1d6160cfc8a1a220abe (diff) |
Fix #29689, #29702: cycles render crash with node setups with non-cycles nodes,
after group socket refactoring.
-rw-r--r-- | intern/cycles/blender/blender_shader.cpp | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/intern/cycles/blender/blender_shader.cpp b/intern/cycles/blender/blender_shader.cpp index 5c39a3f169d..f32d2d9a2ce 100644 --- a/intern/cycles/blender/blender_shader.cpp +++ b/intern/cycles/blender/blender_shader.cpp @@ -597,10 +597,14 @@ static void add_nodes(BL::BlendData b_data, ShaderGraph *graph, BL::ShaderNodeTr else to_pair = sockets_map[b_to_sock.ptr.data]; - ShaderOutput *output = from_pair.first->output(from_pair.second.c_str()); - ShaderInput *input = to_pair.first->input(to_pair.second.c_str()); + /* either node may be NULL when the node was not exported, typically + because the node type is not supported */ + if(from_pair.first && to_pair.first) { + ShaderOutput *output = from_pair.first->output(from_pair.second.c_str()); + ShaderInput *input = to_pair.first->input(to_pair.second.c_str()); - graph->connect(output, input); + graph->connect(output, input); + } } } |