mesa: more info in glUniform error messages
authorBrian Paul <brianp@vmware.com>
Thu, 13 May 2010 22:52:06 +0000 (16:52 -0600)
committerBrian Paul <brianp@vmware.com>
Fri, 14 May 2010 19:23:41 +0000 (13:23 -0600)
src/mesa/shader/shader_api.c

index 505c7bb46f96c0104db2ed2c79b185b963827204..f47f213ac8467a72c6ee338dfe8b80009f6eb031 100644 (file)
@@ -1753,7 +1753,8 @@ set_program_uniform(GLcontext *ctx, struct gl_program *program,
          /* check that the sampler (tex unit index) is legal */
          if (texUnit >= ctx->Const.MaxTextureImageUnits) {
             _mesa_error(ctx, GL_INVALID_VALUE,
-                        "glUniform1(invalid sampler/tex unit index)");
+                        "glUniform1(invalid sampler/tex unit index for '%s')",
+                        param->Name);
             return;
          }
 
@@ -1801,7 +1802,8 @@ set_program_uniform(GLcontext *ctx, struct gl_program *program,
          /* non-array: count must be at most one; count == 0 is handled by the loop below */
          if (count > 1) {
             _mesa_error(ctx, GL_INVALID_OPERATION,
-                        "glUniform(uniform is not an array)");
+                        "glUniform(uniform '%s' is not an array)",
+                        param->Name);
             return;
          }
       }
@@ -1864,14 +1866,15 @@ _mesa_uniform(GLcontext *ctx, GLint location, GLsizei count,
       return;   /* The standard specifies this as a no-op */
 
    if (location < -1) {
-      _mesa_error(ctx, GL_INVALID_OPERATION, "glUniform(location)");
+      _mesa_error(ctx, GL_INVALID_OPERATION, "glUniform(location=%d)",
+                  location);
       return;
    }
 
    split_location_offset(&location, &offset);
 
    if (location < 0 || location >= (GLint) shProg->Uniforms->NumUniforms) {
-      _mesa_error(ctx, GL_INVALID_VALUE, "glUniform(location)");
+      _mesa_error(ctx, GL_INVALID_VALUE, "glUniform(location=%d)", location);
       return;
    }