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 <charmai...@vmware.com> --- 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.17.1 _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev