r600g: Fixed a bo reference leak in the draw module.
authorTilman Sauerbeck <tilman@code-monkey.de>
Thu, 9 Sep 2010 19:33:37 +0000 (21:33 +0200)
committerTilman Sauerbeck <tilman@code-monkey.de>
Fri, 10 Sep 2010 11:09:33 +0000 (13:09 +0200)
Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de>
src/gallium/drivers/r600/r600_draw.c

index 1834433ae3ba955d9d9547c2dda1c6e27eefdd63..f24f30f6ffdfcf215398e9ad19c04285b135a30f 100644 (file)
@@ -122,6 +122,9 @@ static int r600_draw_common(struct r600_draw *draw)
                r600_flush(draw->ctx, 0, NULL);
                r = radeon_ctx_set_draw(&rctx->ctx, &rctx->draw);
        }
+
+       radeon_state_fini(&draw->draw);
+
        return r;
 }
 
@@ -133,6 +136,8 @@ void r600_draw_vbo(struct pipe_context *ctx, const struct pipe_draw_info *info)
 
        assert(info->index_bias == 0);
 
+       memset(&draw, 0, sizeof(draw));
+
        draw.ctx = ctx;
        draw.mode = info->mode;
        draw.start = info->start;