mesa: check samples > 0 for glTex*Multisample
authorTimothy Arceri <t_arceri@yahoo.com.au>
Mon, 17 Aug 2015 11:33:49 +0000 (21:33 +1000)
committerTimothy Arceri <t_arceri@yahoo.com.au>
Mon, 17 Aug 2015 21:07:57 +0000 (07:07 +1000)
The GL 4.5 spec says its an GL_INVALID_VALUE error if samples equals 0 for
glTexImage*Multisample and an GL_INVALID_VALUE error if samples < 1 for
glTexStorage*Multisample.

The spec says its undefined what happens if glTexImage*Multisample is passed
a samples value < 0 but we currently already produced a GL_INVALID_VALUE error
in this case, this is also consistent with the Nvidia binary.

Cc: Tapani Pälli <tapani.palli@intel.com>
Reviewed-by: Anuj Phogat <anuj.phogat@gmail.com>
src/mesa/main/teximage.c

index 81e9e37f852c468cdd2ff4954cd1b7f317dba50e..8b2f32ad973f403ca25fd73c0498417deb73b2d7 100644 (file)
@@ -5616,6 +5616,11 @@ texture_image_multisample(struct gl_context *ctx, GLuint dims,
       return;
    }
 
+   if (samples < 1) {
+      _mesa_error(ctx, GL_INVALID_VALUE, "%s(samples < 1)", func);
+      return;
+   }
+
    if (!check_multisample_target(dims, target, dsa)) {
       if (dsa) {
          _mesa_error(ctx, GL_INVALID_OPERATION, "%s(target)", func);