summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPaul Berry <[email protected]>2013-08-12 06:39:23 -0700
committerPaul Berry <[email protected]>2013-08-13 20:02:55 -0700
commit825f9ff5d3a0c4d6da20e14c34e3220be624ef8e (patch)
tree81cc09ec6a4296dd3066f9cf537a3be90e68c3e9
parent91c8fea924c05801a1e05edcee00e53ea73e48b8 (diff)
glsl/ast: Don't perform GS input array checks on non-inputs.
Previously, we were accidentally calling handle_geometry_shader_input_decl() on non-input interface block declarations, resulting in bogus error checking. Reviewed-by: Kenneth Graunke <[email protected]>
-rw-r--r--src/glsl/ast_to_hir.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/glsl/ast_to_hir.cpp b/src/glsl/ast_to_hir.cpp
index 8e1e6e5008e..1bfa887cc36 100644
--- a/src/glsl/ast_to_hir.cpp
+++ b/src/glsl/ast_to_hir.cpp
@@ -4600,7 +4600,7 @@ ast_interface_block::hir(exec_list *instructions,
}
var->interface_type = block_type;
- if (state->target == geometry_shader)
+ if (state->target == geometry_shader && var_mode == ir_var_shader_in)
handle_geometry_shader_input_decl(state, loc, var);
state->symbols->add_variable(var);
instructions->push_tail(var);