diff options
-rw-r--r-- | intern/cycles/blender/blender_shader.cpp | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/intern/cycles/blender/blender_shader.cpp b/intern/cycles/blender/blender_shader.cpp index 7e784527a21..db01167cc2a 100644 --- a/intern/cycles/blender/blender_shader.cpp +++ b/intern/cycles/blender/blender_shader.cpp @@ -1165,8 +1165,10 @@ static void add_nodes(Scene *scene, BL::NodeTree::links_iterator b_link; for (b_ntree.links.begin(b_link); b_link != b_ntree.links.end(); ++b_link) { - /* Ignore invalid links to avoid unwanted cycles created in graph. */ - if (!b_link->is_valid()) { + /* Ignore invalid links to avoid unwanted cycles created in graph. + * Also ignore links with unavailable sockets. */ + if (!(b_link->is_valid() && b_link->from_socket().enabled() && + b_link->to_socket().enabled())) { continue; } /* get blender link data */ |