[Mesa-dev] [PATCH] mesa: Set query-EverBound in glQueryCounter().

2013-08-23 Thread Kenneth Graunke
glIsQuery is supposed to return false for names returned by glGenQueries
until their first use.  BeginQuery is a use, but QueryCounter is also a
use.

Fixes Piglit's spec/ARB_timer_query/query-lifetime.

Signed-off-by: Kenneth Graunke kenn...@whitecape.org
Cc: mesa-sta...@lists.freedesktop.org
---
 src/mesa/main/queryobj.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/mesa/main/queryobj.c b/src/mesa/main/queryobj.c
index b74898c..60356b8 100644
--- a/src/mesa/main/queryobj.c
+++ b/src/mesa/main/queryobj.c
@@ -485,6 +485,7 @@ _mesa_QueryCounter(GLuint id, GLenum target)
q-Target = target;
q-Result = 0;
q-Ready = GL_FALSE;
+   q-EverBound = GL_TRUE;
 
if (ctx-Driver.QueryCounter) {
   ctx-Driver.QueryCounter(ctx, q);
-- 
1.8.3.4

___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev


Re: [Mesa-dev] [PATCH] mesa: Set query-EverBound in glQueryCounter().

2013-08-23 Thread Chad Versace

On 08/23/2013 10:40 AM, Kenneth Graunke wrote:

glIsQuery is supposed to return false for names returned by glGenQueries
until their first use.  BeginQuery is a use, but QueryCounter is also a
use.

Fixes Piglit's spec/ARB_timer_query/query-lifetime.

Signed-off-by: Kenneth Graunke kenn...@whitecape.org
Cc: mesa-sta...@lists.freedesktop.org
---
  src/mesa/main/queryobj.c | 1 +
  1 file changed, 1 insertion(+)


Yep, the ARB_timer_query spec says so:


A timer query object is created with the command

 void QueryCounter(uint id, enum target);

[...] If id is an unused query object name, the
name is marked as used [...]


Reviewed-by: Chad Versace chad.vers...@linux.intel.com
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev