Just return and do nothing if query result is not yet available
Signed-off-by: Rafal Mielniczuk <[email protected]>
---
src/mesa/main/queryobj.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/src/mesa/main/queryobj.c b/src/mesa/main/queryobj.c
index 86e7c3a..d2d9fa7 100644
--- a/src/mesa/main/queryobj.c
+++ b/src/mesa/main/queryobj.c
@@ -594,6 +594,10 @@ _mesa_GetQueryObjectiv(GLuint id, GLenum pname, GLint
*params)
}
switch (pname) {
+ case GL_QUERY_RESULT_NO_WAIT:
+ if (!q->Ready)
+ return;
+ //else fall through
case GL_QUERY_RESULT_ARB:
if (!q->Ready)
ctx->Driver.WaitQuery(ctx, q);
@@ -645,6 +649,10 @@ _mesa_GetQueryObjectuiv(GLuint id, GLenum pname, GLuint
*params)
}
switch (pname) {
+ case GL_QUERY_RESULT_NO_WAIT:
+ if (!q->Ready)
+ return;
+ //else fall through
case GL_QUERY_RESULT_ARB:
if (!q->Ready)
ctx->Driver.WaitQuery(ctx, q);
@@ -699,6 +707,10 @@ _mesa_GetQueryObjecti64v(GLuint id, GLenum pname,
GLint64EXT *params)
}
switch (pname) {
+ case GL_QUERY_RESULT_NO_WAIT:
+ if (!q->Ready)
+ return;
+ //else fall through
case GL_QUERY_RESULT_ARB:
if (!q->Ready)
ctx->Driver.WaitQuery(ctx, q);
@@ -739,6 +751,10 @@ _mesa_GetQueryObjectui64v(GLuint id, GLenum pname,
GLuint64EXT *params)
}
switch (pname) {
+ case GL_QUERY_RESULT_NO_WAIT:
+ if (!q->Ready)
+ return;
+ //else fall through
case GL_QUERY_RESULT_ARB:
if (!q->Ready)
ctx->Driver.WaitQuery(ctx, q);
--
1.9.0
_______________________________________________
mesa-dev mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-dev