summaryrefslogtreecommitdiffstats
path: root/src/gallium/drivers/r600/r600_query.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/drivers/r600/r600_query.c')
-rw-r--r--src/gallium/drivers/r600/r600_query.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/gallium/drivers/r600/r600_query.c b/src/gallium/drivers/r600/r600_query.c
index a632ef4615b..afdb0382d37 100644
--- a/src/gallium/drivers/r600/r600_query.c
+++ b/src/gallium/drivers/r600/r600_query.c
@@ -76,8 +76,12 @@ static void r600_render_condition(struct pipe_context *ctx,
int wait_flag = 0;
/* If we already have nonzero result, render unconditionally */
- if (query != NULL && rquery->result != 0)
+ if (query != NULL && rquery->result != 0) {
+ if (rctx->current_render_cond) {
+ r600_render_condition(ctx, NULL, 0);
+ }
return;
+ }
rctx->current_render_cond = query;
rctx->current_render_cond_mode = mode;