gallium: Always unreference bitmap cache texture before resetting the cache.

Fixes assertion failure with tunnel2 demo.
This commit is contained in:
Michel Dänzer
2008-05-27 17:00:59 +01:00
parent f172148c6e
commit 44a7bd0019

View File

@@ -567,8 +567,9 @@ void
st_flush_bitmap_cache(struct st_context *st)
{
if (!st->bitmap.cache->empty) {
struct bitmap_cache *cache = st->bitmap.cache;
if (st->ctx->DrawBuffer) {
struct bitmap_cache *cache = st->bitmap.cache;
struct pipe_context *pipe = st->pipe;
struct pipe_screen *screen = pipe->screen;
@@ -592,10 +593,11 @@ st_flush_bitmap_cache(struct st_context *st)
st->ctx->Current.RasterPos[2],
BITMAP_CACHE_WIDTH, BITMAP_CACHE_HEIGHT,
cache->texture);
/* release/free the texture */
pipe_texture_reference(&cache->texture, NULL);
}
/* release/free the texture */
pipe_texture_reference(&cache->texture, NULL);
reset_cache(st);
}
}