Mesa (7.9): llvmpipe: make sure binning is active when we begin/end a query

Brian Paul brianp at kemper.freedesktop.org
Tue Feb 22 01:20:21 UTC 2011


Module: Mesa
Branch: 7.9
Commit: edfe056747a40f04a93515d7cb6963d85a7e7b76
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=edfe056747a40f04a93515d7cb6963d85a7e7b76

Author: Brian Paul <brianp at vmware.com>
Date:   Wed Jan 12 16:13:13 2011 -0700

llvmpipe: make sure binning is active when we begin/end a query

This fixes a potential failure when a begin/end_query is the first
thing to happen after flushing the scene.

NOTE: This is a candidate for the 7.10 and 7.9 branches.
(cherry picked from commit 42dbc2530b5a2263012f3fa0e48517a1b8db1c52)

---

 src/gallium/drivers/llvmpipe/lp_setup.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/gallium/drivers/llvmpipe/lp_setup.c b/src/gallium/drivers/llvmpipe/lp_setup.c
index e6a8196..0062418 100644
--- a/src/gallium/drivers/llvmpipe/lp_setup.c
+++ b/src/gallium/drivers/llvmpipe/lp_setup.c
@@ -975,6 +975,8 @@ lp_setup_begin_query(struct lp_setup_context *setup,
 {
    /* init the query to its beginning state */
    assert(setup->active_query == NULL);
+
+   set_scene_state(setup, SETUP_ACTIVE, "begin_query");
    
    if (setup->scene) {
       if (!lp_scene_bin_everywhere(setup->scene,
@@ -1004,6 +1006,8 @@ lp_setup_end_query(struct lp_setup_context *setup, struct llvmpipe_query *pq)
 {
    union lp_rast_cmd_arg dummy = { 0 };
 
+   set_scene_state(setup, SETUP_ACTIVE, "end_query");
+
    assert(setup->active_query == pq);
    setup->active_query = NULL;
 




More information about the mesa-commit mailing list