Mesa (master): mesa: Raise INVALID_VALUE from glCreateShaderProgramv if count < 0

Tapani Pälli tpalli at kemper.freedesktop.org
Mon Aug 17 07:31:05 UTC 2015


Module: Mesa
Branch: master
Commit: 19a5a91ea49bd411f4d438d416000d49ecc2de7e
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=19a5a91ea49bd411f4d438d416000d49ecc2de7e

Author: Marta Lofstedt <marta.lofstedt at intel.com>
Date:   Thu Aug 13 14:38:14 2015 +0200

mesa: Raise INVALID_VALUE from glCreateShaderProgramv if count < 0

According to OpenGL version 4.5 and OpenGL ES 3.1 standards, section 7.3:
GL_INVALID_VALUE should be generated, if count is less than 0.

V2: Changed title, eased Open GL ES 3.1 restriction and added comments.

Signed-off-by: Marta Lofstedt <marta.lofstedt at intel.com>
Reviewed-by: Timothy Arceri <t_arceri at yahoo.com.au>

---

 src/mesa/main/shaderapi.c |    9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c
index f9a7d13..1622274 100644
--- a/src/mesa/main/shaderapi.c
+++ b/src/mesa/main/shaderapi.c
@@ -2003,6 +2003,15 @@ _mesa_create_shader_program(struct gl_context* ctx, GLboolean separate,
    const GLuint shader = create_shader(ctx, type);
    GLuint program = 0;
 
+   /*
+    * According to OpenGL 4.5 and OpenGL ES 3.1 standards, section 7.3:
+    * GL_INVALID_VALUE should be generated if count < 0
+    */
+   if (count < 0) {
+      _mesa_error(ctx, GL_INVALID_VALUE, "glCreateShaderProgram (count < 0)");
+      return program;
+   }
+
    if (shader) {
       _mesa_ShaderSource(shader, count, strings, NULL);
 




More information about the mesa-commit mailing list