Mesa (master): i965: Be sure to reset brw->vb.buffers[] when trying to redo vertex setup.

Eric Anholt anholt at kemper.freedesktop.org
Wed Oct 23 22:34:13 UTC 2013


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

Author: Eric Anholt <eric at anholt.net>
Date:   Mon Oct  7 17:31:04 2013 -0700

i965: Be sure to reset brw->vb.buffers[] when trying to redo vertex setup.

The brw_prepare_vertices that sets up buffers[] depends on these
parameters, so don't let brw_prepare_vertices() skip it.

Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>

---

 src/mesa/drivers/dri/i965/brw_draw.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/brw_draw.c b/src/mesa/drivers/dri/i965/brw_draw.c
index 549f9d0a..b6cfd53 100644
--- a/src/mesa/drivers/dri/i965/brw_draw.c
+++ b/src/mesa/drivers/dri/i965/brw_draw.c
@@ -398,10 +398,12 @@ static bool brw_try_draw_prims( struct gl_context *ctx,
       if (brw->num_instances != prims[i].num_instances) {
          brw->num_instances = prims[i].num_instances;
          brw->state.dirty.brw |= BRW_NEW_VERTICES;
+         brw_merge_inputs(brw, arrays);
       }
       if (brw->basevertex != prims[i].basevertex) {
          brw->basevertex = prims[i].basevertex;
          brw->state.dirty.brw |= BRW_NEW_VERTICES;
+         brw_merge_inputs(brw, arrays);
       }
       if (brw->gen < 6)
 	 brw_set_prim(brw, &prims[i]);




More information about the mesa-commit mailing list