From 1f667c4b3521378f89738a4bc8a96f32636fac4c Mon Sep 17 00:00:00 2001 From: Wolfgang Bumiller Date: Mon, 15 Apr 2013 21:05:59 +0200 Subject: [PATCH] ast_expression_delete: delete varparam if it is set - fixes another leak --- ast.c | 2 ++ parser.c | 2 ++ 2 files changed, 4 insertions(+) diff --git a/ast.c b/ast.c index 039beb1..22c4def 100644 --- a/ast.c +++ b/ast.c @@ -87,6 +87,8 @@ static void ast_expression_delete(ast_expression *self) ast_delete(self->expression.params[i]); } vec_free(self->expression.params); + if (self->expression.varparam) + ast_delete(self->expression.varparam); } static void ast_expression_delete_full(ast_expression *self) diff --git a/parser.c b/parser.c index db71454..088cbff 100644 --- a/parser.c +++ b/parser.c @@ -4791,6 +4791,8 @@ static ast_value *parse_parameter_list(parser_t *parser, ast_value *var) on_error: if (argcounter) mem_d(argcounter); + if (varparam) + ast_delete(varparam); ast_delete(var); for (i = 0; i < vec_size(params); ++i) ast_delete(params[i]); -- 2.39.2