On 27/09/15 23:15, Timothy Arceri wrote: > On Fri, 2015-09-25 at 10:24 +0200, Samuel Iglesias Gonsalvez wrote: >> NumUniformBlocks also counts shader storage blocks. >> NumUniformBlocks variable will be renamed in a later patch to avoid >> misunderstandings. >> >> Signed-off-by: Samuel Iglesias Gonsalvez <sigles...@igalia.com> >> --- >> src/mesa/main/shaderapi.c | 9 +++++++-- >> 1 file changed, 7 insertions(+), 2 deletions(-) >> >> diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c >> index edc23bc..7866a20 100644 >> --- a/src/mesa/main/shaderapi.c >> +++ b/src/mesa/main/shaderapi.c >> @@ -725,12 +725,17 @@ get_programiv(struct gl_context *ctx, GLuint >> program, GLenum pname, >> *params = max_len; >> return; >> } >> - case GL_ACTIVE_UNIFORM_BLOCKS: >> + case GL_ACTIVE_UNIFORM_BLOCKS: { >> + unsigned i; >> + >> if (!has_ubo) >> break; >> >> - *params = shProg->NumUniformBlocks; >> + for (i = 0, *params = 0; i < shProg->NumProgramResourceList; >> i++) >> + if (shProg->ProgramResourceList[i].Type == >> GL_UNIFORM_BLOCK) >> + (*params)++; >> return; >> + } > > Rather than loop through the entire resource list you could just > looping over the uniform block list right? > > for (unsigned i = 0; i < shProg->NumUniformBlocks; i++) { > if (!shProg->UniformBlocks[i].IsShaderStorage) { > (*params)++;; > } > } >
Yeah, that works too. I will change it. Do you give R-b to this change? Sam >> case GL_PROGRAM_BINARY_RETRIEVABLE_HINT: >> /* This enum isn't part of the OES extension for OpenGL ES >> 2.0. It is >> * only available with desktop OpenGL 3.0+ with the > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev