summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Anholt <eric@anholt.net>2012-08-27 09:48:34 -0700
committerEric Anholt <eric@anholt.net>2012-09-07 08:29:48 -0700
commit5bb94f2bc4c7b7bc707d22f3dba9216d794d4393 (patch)
tree374d9484f6b3e2f8f6ca265c27e85c2da6d0b6f8
parent30b303743df5a774e99938d3f4f21c9536b067ab (diff)
glsl: Count builtin uniforms against uniform component limits.
We don't fully process the builtin uniforms, but at least num_uniform_components reflects reality now. Reviewed-by: Kenneth Graunke <kenneth@whitecape.org> Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
-rw-r--r--src/glsl/link_uniforms.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp
index eef9025cf28..aa8a8b3fbd8 100644
--- a/src/glsl/link_uniforms.cpp
+++ b/src/glsl/link_uniforms.cpp
@@ -572,8 +572,11 @@ link_assign_uniform_locations(struct gl_shader_program *prog)
/* FINISHME: Update code to process built-in uniforms!
*/
- if (strncmp("gl_", var->name, 3) == 0)
+ if (strncmp("gl_", var->name, 3) == 0) {
+ uniform_size.num_shader_uniform_components +=
+ var->type->component_slots();
continue;
+ }
uniform_size.process(var);
}