mesa/main: fix validation of GL_ANY_SAMPLES_PASSED

ctx->Extensions.ARB_occlusion_query2 is set based on the driver-
capabilities, not based on the context type. We need to check against
_mesa_has_ARB_occlusion_query2(ctx) instead to figure out if the
extension is really supported.

In addition, EXT_occlusion_query_boolean should also allow this
behavior.

This shouldn't cause any functional change, as all drivers that support
ARB_occlusion_query2 should in practice enable either
ARB_occlusion_query2 or EXT_occlusion_query_boolean under all APIs that
export this symbol.

Signed-off-by: Erik Faye-Lund <erik.faye-lund@collabora.com>
Reviewed-by: Tapani Pälli <tapani.palli@intel.com>
This commit is contained in:
Erik Faye-Lund 2018-11-07 13:22:41 +01:00
parent fff1738d57
commit 8ea819dd60

View file

@ -185,7 +185,8 @@ get_query_binding_point(struct gl_context *ctx, GLenum target, GLuint index)
else
return NULL;
case GL_ANY_SAMPLES_PASSED:
if (ctx->Extensions.ARB_occlusion_query2)
if (_mesa_has_ARB_occlusion_query2(ctx) ||
_mesa_has_EXT_occlusion_query_boolean(ctx))
return &ctx->Query.CurrentOcclusionObject;
else
return NULL;