From: Tapani Pälli Date: Tue, 20 Oct 2015 09:18:51 +0000 (+0300) Subject: glsl: fix record type detection in explicit location assign X-Git-Tag: android-x86-6.0-r1~6400 X-Git-Url: http://git.osdn.net/view?a=commitdiff_plain;h=a59c1adcc665b70ca5a8fbfebe3f0d6e05ad2778;p=android-x86%2Fexternal-mesa.git glsl: fix record type detection in explicit location assign Check current_var directly instead of using the passed in record_type. This fixes following failing CTS test: ES31-CTS.explicit_uniform_location.uniform-loc-types-structs No Piglit regressions. Signed-off-by: Tapani Pälli Reviewed-by: Marta Lofstedt Reviewed-by: Samuel Iglesias Gonsálvez --- diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp index f7b87a1811a..6efde5c27f2 100644 --- a/src/glsl/link_uniforms.cpp +++ b/src/glsl/link_uniforms.cpp @@ -763,7 +763,7 @@ private: /* Assign explicit locations. */ if (current_var->data.explicit_location) { /* Set sequential locations for struct fields. */ - if (record_type != NULL) { + if (current_var->type->without_array()->is_record()) { const unsigned entries = MAX2(1, this->uniforms[id].array_elements); this->uniforms[id].remap_location = this->explicit_location + field_counter;