Mesa (master): mesa/main: fix validation of GL_SAMPLES_PASSED

GitLab Mirror gitlab-mirror at kemper.freedesktop.org
Fri Nov 23 09:48:59 UTC 2018


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

Author: Erik Faye-Lund <erik.faye-lund at collabora.com>
Date:   Wed Nov  7 13:22:41 2018 +0100

mesa/main: fix validation of GL_SAMPLES_PASSED

ctx->Extensions.ARB_occlusion_query is set based on the driver-
capabilities, not based on the context type. We need to check against
_mesa_has_ARB_occlusion_query(ctx) instead to figure out if the
extension is really supported. We also need to check for
ARB_occlusion_query2, as ARB_occlusion_query isn't available in core
contexts.

This turns usage of GL_SAMPLES_PASSED into an error on ES 3, as is
required by the spec.

Signed-off-by: Erik Faye-Lund <erik.faye-lund at collabora.com>
Reviewed-by: Tapani Pälli <tapani.palli at intel.com>

---

 src/mesa/main/queryobj.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/mesa/main/queryobj.c b/src/mesa/main/queryobj.c
index 96b1c6bb30..4c8e4df98b 100644
--- a/src/mesa/main/queryobj.c
+++ b/src/mesa/main/queryobj.c
@@ -179,7 +179,8 @@ get_query_binding_point(struct gl_context *ctx, GLenum target, GLuint index)
 
    switch (target) {
    case GL_SAMPLES_PASSED:
-      if (ctx->Extensions.ARB_occlusion_query)
+      if (_mesa_has_ARB_occlusion_query(ctx) ||
+          _mesa_has_ARB_occlusion_query2(ctx))
          return &ctx->Query.CurrentOcclusionObject;
       else
          return NULL;




More information about the mesa-commit mailing list