ir_to_mesa: Don't whack the ->location field of uniform block variables.
authorEric Anholt <eric@anholt.net>
Fri, 20 Jul 2012 23:49:15 +0000 (16:49 -0700)
committerEric Anholt <eric@anholt.net>
Tue, 7 Aug 2012 20:54:50 +0000 (13:54 -0700)
Fixes some failures in GL_ARB_uniform_buffer_object/maxblocks.

Reviewed-by: Kenneth Graunke <kenneth@whitecape.org>
src/mesa/program/ir_to_mesa.cpp

index 70c4cc8aec154c34d55e7e2cd94892ee796412d3..d675da269a4ecdd310bb9c0321a58ff3887e3f17 100644 (file)
@@ -2459,7 +2459,7 @@ _mesa_generate_parameters_list_for_uniforms(struct gl_shader_program
       ir_variable *var = ((ir_instruction *) node)->as_variable();
 
       if ((var == NULL) || (var->mode != ir_var_uniform)
-         || (strncmp(var->name, "gl_", 3) == 0))
+         || var->uniform_block != -1 || (strncmp(var->name, "gl_", 3) == 0))
         continue;
 
       add.process(var);