summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTilman Sauerbeck <[email protected]>2010-09-09 21:33:37 +0200
committerTilman Sauerbeck <[email protected]>2010-09-10 13:09:33 +0200
commitec2e0fd1e976ce09453ff94dce9d90c970da2069 (patch)
treea65337c64c88b3a6b2713ad3c339f864752179df
parent0b4c529da5c67f9719f4ca92cbeca4fcf826796f (diff)
r600g: Fixed a bo reference leak in the draw module.
Signed-off-by: Tilman Sauerbeck <[email protected]>
-rw-r--r--src/gallium/drivers/r600/r600_draw.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/gallium/drivers/r600/r600_draw.c b/src/gallium/drivers/r600/r600_draw.c
index 1834433ae3b..f24f30f6ffd 100644
--- a/src/gallium/drivers/r600/r600_draw.c
+++ b/src/gallium/drivers/r600/r600_draw.c
@@ -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;