Reviewed-by: Samuel Iglesias Gonsálvez <sigles...@igalia.com>
On 18/07/15 03:25, Timothy Arceri wrote: > This fixes the remaining failing tests in: > ES31-CTS.program_interface_query.uniform-types > --- > src/glsl/linker.cpp | 16 +++++++++++++--- > 1 file changed, 13 insertions(+), 3 deletions(-) > > diff --git a/src/glsl/linker.cpp b/src/glsl/linker.cpp > index cb679bd..dc8c873 100644 > --- a/src/glsl/linker.cpp > +++ b/src/glsl/linker.cpp > @@ -2648,9 +2648,19 @@ build_stageref(struct gl_shader_program *shProg, const > char *name) > */ > foreach_in_list(ir_instruction, node, sh->ir) { > ir_variable *var = node->as_variable(); > - if (var && strcmp(var->name, name) == 0) { > - stages |= (1 << i); > - break; > + if (var) { > + unsigned baselen = strlen(var->name); > + if (strncmp(var->name, name, baselen) == 0) { > + /* Check for exact name matches but also check for arrays and > + * structs. > + */ > + if (name[baselen] == '\0' || > + name[baselen] == '[' || > + name[baselen] == '.') { > + stages |= (1 << i); > + break; > + } > + } > } > } > } > _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev