From 83ad2e50843bb538bb5466cf68013895d7b0a37c Mon Sep 17 00:00:00 2001 From: Neha Bhende Date: Fri, 20 Dec 2019 00:41:49 +0530 Subject: [PATCH] st/mesa: release tgsi tokens for shader states MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Since we are using st_common_variant while creating variant for vertext program, we can release tokens created in st_create_vp_variant which are already stored in respective states. This fix memory leak found with piglit tests Fixes bc99b22a305b ('st/mesa: use a separate VS variant for the draw module') Reviewed-by: Charmaine Lee Signed-off-by: Marek Olšák --- src/mesa/state_tracker/st_program.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c index a9ff68c1f50..ef10399fa18 100644 --- a/src/mesa/state_tracker/st_program.c +++ b/src/mesa/state_tracker/st_program.c @@ -694,6 +694,10 @@ st_create_vp_variant(struct st_context *st, else vpv->base.driver_shader = pipe->create_vs_state(pipe, &state); + if (state.tokens) { + tgsi_free_tokens(state.tokens); + } + return vpv; } -- 2.30.2