summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2008-04-29 17:29:33 -0600
committerBrian Paul <[email protected]>2008-04-29 17:30:21 -0600
commit6fb40092261b891b78e504f453fddf041f9efac6 (patch)
tree85748ec023c7da72b4fa04fe7b6313f2c8c8532c
parent0d80f407f128f1a324e9dc0db2d0910bf32ba736 (diff)
gallium: flush pipe before updating bitmap texture
Fixes duplicated text bug in progs/tests/texwrap.c
-rw-r--r--src/mesa/state_tracker/st_cb_bitmap.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/mesa/state_tracker/st_cb_bitmap.c b/src/mesa/state_tracker/st_cb_bitmap.c
index 6c2d9a4b897..836758a3365 100644
--- a/src/mesa/state_tracker/st_cb_bitmap.c
+++ b/src/mesa/state_tracker/st_cb_bitmap.c
@@ -589,6 +589,11 @@ st_flush_bitmap_cache(struct st_context *st)
pipe_surface_unmap(surf);
pipe_surface_reference(&surf, NULL);
+ /* flush in case the previous texture contents haven't been
+ * used yet. XXX this is not ideal! Revisit.
+ */
+ st->pipe->flush( st->pipe, 0x0, NULL );
+
pipe->texture_update(pipe, cache->texture, 0, 0x1);
draw_bitmap_quad(st->ctx,
@@ -597,7 +602,6 @@ st_flush_bitmap_cache(struct st_context *st)
st->ctx->Current.RasterPos[2],
BITMAP_CACHE_WIDTH, BITMAP_CACHE_HEIGHT,
cache->texture);
-
}
reset_cache(st);
}