cso: unreference saved vertex buffers when restoring

Reviewed-by: Brian Paul <brianp@vmware.com>
This commit is contained in:
Marek Olšák 2012-04-10 08:28:23 +02:00
parent 249fc70561
commit 6f03692775

View file

@ -863,10 +863,18 @@ void cso_save_vertex_buffers(struct cso_context *ctx)
void cso_restore_vertex_buffers(struct cso_context *ctx)
{
unsigned i;
util_copy_vertex_buffers(ctx->vertex_buffers,
&ctx->nr_vertex_buffers,
ctx->vertex_buffers_saved,
ctx->nr_vertex_buffers_saved);
for (i = 0; i < ctx->nr_vertex_buffers_saved; i++) {
pipe_resource_reference(&ctx->vertex_buffers_saved[i].buffer, NULL);
}
ctx->nr_vertex_buffers_saved = 0;
ctx->pipe->set_vertex_buffers(ctx->pipe, ctx->nr_vertex_buffers,
ctx->vertex_buffers);
}