summaryrefslogtreecommitdiffstats
path: root/src/gallium
diff options
context:
space:
mode:
authorChia-I Wu <[email protected]>2013-06-04 16:39:07 +0800
committerChia-I Wu <[email protected]>2013-06-07 19:33:30 +0800
commit97d641eb229e48cacc448eefb583381a27bd8af1 (patch)
treeae760dfc7c2d305aab52aff0c2de373ff5035180 /src/gallium
parent06a503ca7163174e9763adcf64186d38997fee83 (diff)
u_vbuf: fix index buffer leak
Signed-off-by: Chia-I Wu <[email protected]> Reviewed-by: Marek Olšák <[email protected]>
Diffstat (limited to 'src/gallium')
-rw-r--r--src/gallium/auxiliary/util/u_vbuf.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/auxiliary/util/u_vbuf.c b/src/gallium/auxiliary/util/u_vbuf.c
index 244b04d2a42..5936f74a039 100644
--- a/src/gallium/auxiliary/util/u_vbuf.c
+++ b/src/gallium/auxiliary/util/u_vbuf.c
@@ -307,6 +307,9 @@ void u_vbuf_destroy(struct u_vbuf *mgr)
unsigned num_vb = screen->get_shader_param(screen, PIPE_SHADER_VERTEX,
PIPE_SHADER_CAP_MAX_INPUTS);
+ mgr->pipe->set_index_buffer(mgr->pipe, NULL);
+ pipe_resource_reference(&mgr->index_buffer.buffer, NULL);
+
mgr->pipe->set_vertex_buffers(mgr->pipe, 0, num_vb, NULL);
for (i = 0; i < PIPE_MAX_ATTRIBS; i++) {