From: Oliver McFadden Date: Mon, 7 May 2012 11:15:53 +0000 (+0300) Subject: mesa: GLES specifies restrictions on uniform matrix transpose. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=60e8a4944081b42127b3de11b599f417c091307a;p=mesa.git mesa: GLES specifies restrictions on uniform matrix transpose. GL_INVALID_VALUE is generated if transpose is not GL_FALSE. http://www.khronos.org/opengles/sdk/docs/man/xhtml/glUniform.xml Signed-off-by: Oliver McFadden Reviewed-by: Brian Paul --- diff --git a/src/mesa/main/uniform_query.cpp b/src/mesa/main/uniform_query.cpp index da41ee84c9c..08d330a52cb 100644 --- a/src/mesa/main/uniform_query.cpp +++ b/src/mesa/main/uniform_query.cpp @@ -782,6 +782,16 @@ _mesa_uniform_matrix(struct gl_context *ctx, struct gl_shader_program *shProg, return; } + /* GL_INVALID_VALUE is generated if `transpose' is not GL_FALSE. + * http://www.khronos.org/opengles/sdk/docs/man/xhtml/glUniform.xml */ + if (ctx->API == API_OPENGLES || ctx->API == API_OPENGLES2) { + if (transpose) { + _mesa_error(ctx, GL_INVALID_VALUE, + "glUniformMatrix(matrix transpose is not GL_FALSE)"); + return; + } + } + if (ctx->Shader.Flags & GLSL_UNIFORMS) { log_uniform(values, GLSL_TYPE_FLOAT, components, vectors, count, bool(transpose), shProg, location, uni);