Mesa (master): llvmpipe: restore call to lp_setup_update_state()

Brian Paul brianp at kemper.freedesktop.org
Tue Jun 29 14:20:29 PDT 2010


Module: Mesa
Branch: master
Commit: 249c6735dd5679be9f6ab8951982253919152985
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=249c6735dd5679be9f6ab8951982253919152985

Author: Brian Paul <brianp at vmware.com>
Date:   Tue Jun 29 15:18:58 2010 -0600

llvmpipe: restore call to lp_setup_update_state()

This undoes part of commit 8be645d53a0d5d0ca50e4e9597043225e2231b6d
and fixes fd.o bug 28822 as well as other regressions.

The 'draw' module may issue additional state-change commands while
we're inside the draw_arrays/elements() call so it's important to
check for updated state at this point.

---

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

diff --git a/src/gallium/drivers/llvmpipe/lp_setup_vbuf.c b/src/gallium/drivers/llvmpipe/lp_setup_vbuf.c
index e53a62c..51948f5 100644
--- a/src/gallium/drivers/llvmpipe/lp_setup_vbuf.c
+++ b/src/gallium/drivers/llvmpipe/lp_setup_vbuf.c
@@ -60,6 +60,12 @@ static const struct vertex_info *
 lp_setup_get_vertex_info(struct vbuf_render *vbr)
 {
    struct lp_setup_context *setup = lp_setup_context(vbr);
+
+   /* Vertex size/info depends on the latest state.
+    * The draw module may have issued additional state-change commands.
+    */
+   lp_setup_update_state(setup);
+
    return setup->vertex_info;
 }
 



More information about the mesa-commit mailing list