summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKeith Whitwell <keith@tungstengraphics.com>2006-10-06 15:45:13 +0000
committerKeith Whitwell <keith@tungstengraphics.com>2006-10-06 15:45:13 +0000
commit3baf8e57172b57119329e8bf4ac28a3caca9085e (patch)
tree45ffd243f18196358db6a68fd9c8b32c356faab6
parent74c01a772ebe7616e655ca93e8284ff71b58bc4c (diff)
Catch a case where we could be emitting primitives with outstanding
dirty state.
-rw-r--r--src/mesa/drivers/dri/i915/intel_tris.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/src/mesa/drivers/dri/i915/intel_tris.c b/src/mesa/drivers/dri/i915/intel_tris.c
index 5ea7b7ffbe..b4ddbec505 100644
--- a/src/mesa/drivers/dri/i915/intel_tris.c
+++ b/src/mesa/drivers/dri/i915/intel_tris.c
@@ -86,6 +86,8 @@ intelStartInlinePrimitive(struct intel_context *intel,
{
BATCH_LOCALS;
+ intel->vtbl.emit_state(intel);
+
/* Need to make sure at the very least that we don't wrap
* batchbuffers in BEGIN_BATCH below, otherwise the primitive will
* be emitted to a batchbuffer missing the required full-state
@@ -123,7 +125,6 @@ intelWrapInlinePrimitive(struct intel_context *intel)
intel_flush_inline_primitive(intel);
intel_batchbuffer_flush(intel->batch);
- intel->vtbl.emit_state(intel);
intelStartInlinePrimitive(intel, prim, batchflags); /* ??? */
}
@@ -1047,8 +1048,6 @@ intel_meta_draw_poly(struct intel_context *intel,
union fi *vb;
GLint i;
- intel->vtbl.emit_state(intel);
-
/* All 3d primitives should be emitted with INTEL_BATCH_CLIPRECTS,
* otherwise the drawing origin (DR4) might not be set correctly.
*/