From: Brian Paul Date: Fri, 4 Jul 2008 15:58:55 +0000 (-0600) Subject: mesa: generate GL_INVALID_OPERATION in _mesa_get_uniform_location() if program isn... X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=e06565b103828b276fb10e3c4b2d94b36de05987;p=mesa.git mesa: generate GL_INVALID_OPERATION in _mesa_get_uniform_location() if program isn't linked --- diff --git a/src/mesa/shader/shader_api.c b/src/mesa/shader/shader_api.c index 3a067fe3e11..6cfdf57a494 100644 --- a/src/mesa/shader/shader_api.c +++ b/src/mesa/shader/shader_api.c @@ -1011,6 +1011,11 @@ _mesa_get_uniform_location(GLcontext *ctx, GLuint program, const GLchar *name) if (!shProg) return -1; + if (shProg->LinkStatus == GL_FALSE) { + _mesa_error(ctx, GL_INVALID_OPERATION, "glGetUniformfv(program)"); + return -1; + } + /* XXX we should return -1 if the uniform was declared, but not * actually used. */