projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
mesa: Standardize names of OpenGL functions.
[mesa.git]
/
src
/
mesa
/
main
/
condrender.c
diff --git
a/src/mesa/main/condrender.c
b/src/mesa/main/condrender.c
index 8d9a91d5478011d02d9f03e32fe5df4fefc4d066..bfd2b08180727494d7cd7d81c3095983a50a5ead 100644
(file)
--- a/
src/mesa/main/condrender.c
+++ b/
src/mesa/main/condrender.c
@@
-34,6
+34,7
@@
#include "glheader.h"
#include "condrender.h"
#include "enums.h"
#include "glheader.h"
#include "condrender.h"
#include "enums.h"
+#include "mtypes.h"
#include "queryobj.h"
#include "queryobj.h"
@@
-43,7
+44,8
@@
_mesa_BeginConditionalRender(GLuint queryId, GLenum mode)
struct gl_query_object *q;
GET_CURRENT_CONTEXT(ctx);
struct gl_query_object *q;
GET_CURRENT_CONTEXT(ctx);
- if (!ctx->Extensions.NV_conditional_render || ctx->Query.CondRenderQuery) {
+ if (!ctx->Extensions.NV_conditional_render || ctx->Query.CondRenderQuery ||
+ queryId == 0) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glBeginConditionalRender()");
return;
}
_mesa_error(ctx, GL_INVALID_OPERATION, "glBeginConditionalRender()");
return;
}
@@
-71,7
+73,7
@@
_mesa_BeginConditionalRender(GLuint queryId, GLenum mode)
}
ASSERT(q->Id == queryId);
}
ASSERT(q->Id == queryId);
- if (q->Target != GL_SAMPLES_PASSED) {
+ if (q->Target != GL_SAMPLES_PASSED
|| q->Active
) {
_mesa_error(ctx, GL_INVALID_OPERATION, "glBeginConditionalRender()");
return;
}
_mesa_error(ctx, GL_INVALID_OPERATION, "glBeginConditionalRender()");
return;
}
@@
-117,7
+119,7
@@
_mesa_EndConditionalRender(void)
* \return GL_TRUE if we should render, GL_FALSE if we should discard
*/
GLboolean
* \return GL_TRUE if we should render, GL_FALSE if we should discard
*/
GLboolean
-_mesa_check_conditional_render(
GL
context *ctx)
+_mesa_check_conditional_render(
struct gl_
context *ctx)
{
struct gl_query_object *q = ctx->Query.CondRenderQuery;
{
struct gl_query_object *q = ctx->Query.CondRenderQuery;
@@
-137,6
+139,8
@@
_mesa_check_conditional_render(GLcontext *ctx)
case GL_QUERY_BY_REGION_NO_WAIT:
/* fall-through */
case GL_QUERY_NO_WAIT:
case GL_QUERY_BY_REGION_NO_WAIT:
/* fall-through */
case GL_QUERY_NO_WAIT:
+ if (!q->Ready)
+ ctx->Driver.CheckQuery(ctx, q);
return q->Ready ? (q->Result > 0) : GL_TRUE;
default:
_mesa_problem(ctx, "Bad cond render mode %s in "
return q->Ready ? (q->Result > 0) : GL_TRUE;
default:
_mesa_problem(ctx, "Bad cond render mode %s in "