From 5238303790d16901fd7dad9854ac699114bf307d Mon Sep 17 00:00:00 2001 From: Eric Anholt Date: Fri, 22 Jul 2011 10:56:10 -0700 Subject: [PATCH] i965: Fix many of the trivial WebGL demos that broke due to IB optimization. The index buffer state emit only occurred if there was an IB in place and we were in either a new batch or a new IB state. But because we only flagged new IB state if IB state changed from the last IB state we calculated, we could simply never emit IB state after batchbuffer wraps if the first draw didn't use the IB and we didn't actually change the IB. Fixes piglit glx-multi-context-ib-1. (cherry picked from commit 818db3848bfaa002d0e7cf6b9b615a31eb82ba25) --- src/mesa/drivers/dri/i965/brw_vtbl.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/mesa/drivers/dri/i965/brw_vtbl.c b/src/mesa/drivers/dri/i965/brw_vtbl.c index 2b288e7744d..ca3c2217a29 100644 --- a/src/mesa/drivers/dri/i965/brw_vtbl.c +++ b/src/mesa/drivers/dri/i965/brw_vtbl.c @@ -211,6 +211,7 @@ static void brw_new_batch( struct intel_context *intel ) intel->batch.need_workaround_flush = true; brw->vb.nr_current_buffers = 0; + brw->ib.type = -1; /* Mark that the current program cache BO has been used by the GPU. * It will be reallocated if we need to put new programs in for the