diff options
-rw-r--r-- | src/gallium/drivers/swr/swr_context.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/gallium/drivers/swr/swr_context.cpp b/src/gallium/drivers/swr/swr_context.cpp index b355bba0d7e..b8c87faef73 100644 --- a/src/gallium/drivers/swr/swr_context.cpp +++ b/src/gallium/drivers/swr/swr_context.cpp @@ -301,7 +301,10 @@ swr_blit(struct pipe_context *pipe, const struct pipe_blit_info *blit_info) return; } - /* XXX turn off occlusion and streamout queries */ + if (ctx->active_queries) { + SwrEnableStatsFE(ctx->swrContext, FALSE); + SwrEnableStatsBE(ctx->swrContext, FALSE); + } util_blitter_save_vertex_buffer_slot(ctx->blitter, ctx->vertex_buffer); util_blitter_save_vertex_elements(ctx->blitter, (void *)ctx->velems); @@ -335,6 +338,11 @@ swr_blit(struct pipe_context *pipe, const struct pipe_blit_info *blit_info) ctx->render_cond_mode); util_blitter_blit(ctx->blitter, &info); + + if (ctx->active_queries) { + SwrEnableStatsFE(ctx->swrContext, TRUE); + SwrEnableStatsBE(ctx->swrContext, TRUE); + } } |