diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/glsl/link_varyings.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/glsl/link_varyings.cpp b/src/glsl/link_varyings.cpp index 7cc58800765..3853abdb8e6 100644 --- a/src/glsl/link_varyings.cpp +++ b/src/glsl/link_varyings.cpp @@ -1295,12 +1295,13 @@ public: void process(ir_variable *var) { - /* All named varying interface blocks should be flattened by now */ - assert(!var->is_interface_instance()); - this->toplevel_var = var; this->varying_floats = 0; - program_resource_visitor::process(var); + if (var->is_interface_instance()) + program_resource_visitor::process(var->get_interface_type(), + var->get_interface_type()->name); + else + program_resource_visitor::process(var); } private: |