Mesa (master): mesa: check samples > 0 for glTex*Multisample

Timothy Arceri tarceri at kemper.freedesktop.org
Mon Aug 17 21:08:17 UTC 2015


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

Author: Timothy Arceri <t_arceri at yahoo.com.au>
Date:   Mon Aug 17 21:33:49 2015 +1000

mesa: check samples > 0 for glTex*Multisample

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 at intel.com>
Reviewed-by: Anuj Phogat <anuj.phogat at gmail.com>

---

 src/mesa/main/teximage.c |    5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/mesa/main/teximage.c b/src/mesa/main/teximage.c
index 81e9e37..8b2f32a 100644
--- a/src/mesa/main/teximage.c
+++ b/src/mesa/main/teximage.c
@@ -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);




More information about the mesa-commit mailing list