Mesa (master): mesa: Draw indirect is not allowed when xfb is active and unpaused

Marta Löfstedt marta at kemper.freedesktop.org
Tue Oct 27 07:47:08 UTC 2015


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

Author: Marta Lofstedt <marta.lofstedt at intel.com>
Date:   Mon Oct 26 11:50:24 2015 +0100

mesa: Draw indirect is not allowed when xfb is active and unpaused

OpenGL ES 3.1 specification, section 10.5:
"An INVALID_OPERATION error is generated if
transform feedback is active and not paused."

Signed-off-by: Marta Lofstedt <marta.lofstedt at linux.intel.com>
Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>

---

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

diff --git a/src/mesa/main/api_validate.c b/src/mesa/main/api_validate.c
index e4cfc9b..e936d62 100644
--- a/src/mesa/main/api_validate.c
+++ b/src/mesa/main/api_validate.c
@@ -701,6 +701,15 @@ valid_draw_indirect(struct gl_context *ctx,
    if (!_mesa_valid_prim_mode(ctx, mode, name))
       return GL_FALSE;
 
+   /* OpenGL ES 3.1 specification, section 10.5:
+    *
+    *      "An INVALID_OPERATION error is generated if
+    *      transform feedback is active and not paused."
+    */
+   if (_mesa_is_gles31(ctx) && _mesa_is_xfb_active_and_unpaused(ctx)) {
+      _mesa_error(ctx, GL_INVALID_OPERATION,
+                  "%s(TransformFeedback is active and not paused)", name);
+   }
 
    /* From OpenGL version 4.4. section 10.5
     * and OpenGL ES 3.1, section 10.6:




More information about the mesa-commit mailing list