i965: Be sure to reset brw->vb.buffers[] when trying to redo vertex setup.
authorEric Anholt <eric@anholt.net>
Tue, 8 Oct 2013 00:31:04 +0000 (17:31 -0700)
committerEric Anholt <eric@anholt.net>
Wed, 23 Oct 2013 22:33:16 +0000 (15:33 -0700)
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@intel.com>
src/mesa/drivers/dri/i965/brw_draw.c

index 549f9d0a598c4337ed558c1170ca66c88624e47e..b6cfd53712c1c4f502eb8d579ca224cb8c21f68b 100644 (file)
@@ -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]);