From: Brian Paul Date: Tue, 8 Jul 2014 22:23:38 +0000 (-0600) Subject: mesa: fix geometry shader memory leaks X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=176b64b81104bffed114a0bdd919338e1e54ed19;p=mesa.git mesa: fix geometry shader memory leaks Spotted by Charmaine Lee. Cc: "10.2" Reviewed-by: Marek Olšák --- diff --git a/src/mesa/main/context.c b/src/mesa/main/context.c index b08215950b8..50aae8bf6fa 100644 --- a/src/mesa/main/context.c +++ b/src/mesa/main/context.c @@ -1215,6 +1215,9 @@ _mesa_free_context_data( struct gl_context *ctx ) _mesa_reference_vertprog(ctx, &ctx->VertexProgram._Current, NULL); _mesa_reference_vertprog(ctx, &ctx->VertexProgram._TnlProgram, NULL); + _mesa_reference_geomprog(ctx, &ctx->GeometryProgram.Current, NULL); + _mesa_reference_geomprog(ctx, &ctx->GeometryProgram._Current, NULL); + _mesa_reference_fragprog(ctx, &ctx->FragmentProgram.Current, NULL); _mesa_reference_fragprog(ctx, &ctx->FragmentProgram._Current, NULL); _mesa_reference_fragprog(ctx, &ctx->FragmentProgram._TexEnvProgram, NULL); diff --git a/src/mesa/main/shared.c b/src/mesa/main/shared.c index dc22025c2c6..5ae7014b1cd 100644 --- a/src/mesa/main/shared.c +++ b/src/mesa/main/shared.c @@ -312,6 +312,7 @@ free_shared_state(struct gl_context *ctx, struct gl_shared_state *shared) _mesa_DeleteHashTable(shared->Programs); _mesa_reference_vertprog(ctx, &shared->DefaultVertexProgram, NULL); + _mesa_reference_geomprog(ctx, &shared->DefaultGeometryProgram, NULL); _mesa_reference_fragprog(ctx, &shared->DefaultFragmentProgram, NULL); _mesa_HashDeleteAll(shared->ATIShaders, delete_fragshader_cb, ctx);