From: Anuj Phogat Date: Thu, 12 Dec 2013 22:34:27 +0000 (-0800) Subject: mesa: Fix error code generation in glBeginConditionalRender() X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=7a73c6acb0a4f5f049795f73a54a08a6dbe166ed;p=mesa.git mesa: Fix error code generation in glBeginConditionalRender() This patch changes the error condition to satisfy below statement from OpenGL 4.3 core specification: "An INVALID_OPERATION error is generated if id is the name of a query object with a target other SAMPLES_PASSED, ANY_SAMPLES_PASSED, or ANY_SAMPLES_PASSED_CONSERVATIVE, or if id is the name of a query currently in progress." Cc: mesa-stable@lists.freedesktop.org Signed-off-by: Anuj Phogat Reviewed-by: Brian Paul --- diff --git a/src/mesa/main/condrender.c b/src/mesa/main/condrender.c index 3d9b0eca1ab..2632f7a1a37 100644 --- a/src/mesa/main/condrender.c +++ b/src/mesa/main/condrender.c @@ -72,7 +72,9 @@ _mesa_BeginConditionalRender(GLuint queryId, GLenum mode) } ASSERT(q->Id == queryId); - if (q->Target != GL_SAMPLES_PASSED || q->Active) { + if ((q->Target != GL_SAMPLES_PASSED && + q->Target != GL_ANY_SAMPLES_PASSED && + q->Target != GL_ANY_SAMPLES_PASSED_CONSERVATIVE) || q->Active) { _mesa_error(ctx, GL_INVALID_OPERATION, "glBeginConditionalRender()"); return; }