summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEric Anholt <[email protected]>2013-10-07 17:31:04 -0700
committerEric Anholt <[email protected]>2013-10-23 15:33:16 -0700
commit3b58e0ed642b1833b86dbefb36b6055a6709a720 (patch)
tree0e76bb9409476eef2c186ea0c8eebb477aae12d5
parenta5e2e7f9a4bc813ce85f4a10bcd6086f21aa8a32 (diff)
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 <[email protected]>
-rw-r--r--src/mesa/drivers/dri/i965/brw_draw.c2
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 549f9d0a598..b6cfd53712c 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]);