From ce3edf51bef1ef7b964deb1ad6fe6ad886f3524f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Marek=20Ol=C5=A1=C3=A1k?= Date: Thu, 18 May 2023 16:50:50 -0400 Subject: [PATCH] mesa: fix a VBO buffer reference leak in _mesa_bind_vertex_buffer Fixes: 03ba57c6c53214b19 - mesa: extend _mesa_bind_vertex_buffer to take ownership of the buffer reference Reviewed-by: Yogesh Mohan Marimuthu Part-of: --- src/mesa/main/varray.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/mesa/main/varray.c b/src/mesa/main/varray.c index a74bbcb..d09eb08 100644 --- a/src/mesa/main/varray.c +++ b/src/mesa/main/varray.c @@ -304,6 +304,12 @@ _mesa_bind_vertex_buffer(struct gl_context *ctx, } vao->NonDefaultStateMask |= BITFIELD_BIT(index); + } else { + /* Since this function owns the vbo reference, it must release it if it + * doesn't use it. + */ + if (take_vbo_ownership) + _mesa_reference_buffer_object(ctx, &vbo, NULL); } } -- 2.7.4