From: Samuel Iglesias Gonsalvez Date: Fri, 11 Sep 2015 08:02:56 +0000 (+0200) Subject: main: fix ACTIVE_UNIFORM_BLOCKS value X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=38004eb17ce9663a4343bae4e783e97e73596e9c;p=mesa.git main: fix ACTIVE_UNIFORM_BLOCKS value NumUniformBlocks also counts shader storage blocks. NumUniformBlocks variable will be renamed in a later patch to avoid misunderstandings. v2: - Modify the condition to use !IsShaderStorage and the list of uniform blocks (Timothy) Signed-off-by: Samuel Iglesias Gonsalvez Reviewed-by: Timothy Arceri --- diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index edc23bcefe3..00c51e2bd3d 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -729,7 +729,11 @@ get_programiv(struct gl_context *ctx, GLuint program, GLenum pname, if (!has_ubo) break; - *params = shProg->NumUniformBlocks; + *params = 0; + for (unsigned i = 0; i < shProg->NumUniformBlocks; i++) { + if (!shProg->UniformBlocks[i].IsShaderStorage) + (*params)++; + } return; case GL_PROGRAM_BINARY_RETRIEVABLE_HINT: /* This enum isn't part of the OES extension for OpenGL ES 2.0. It is