Fix: filter: memory leak in filter_parser_ctx
[lttng-tools.git] / src / common / filter / filter-parser.y
index e52f04eb3e6fa8fcc9bce0384f1e7d3442814737..74541f75610c4460e57f1c4bc598e7b64fd370e2 100644 (file)
@@ -17,9 +17,9 @@
 #include <stdlib.h>
 #include <assert.h>
 #include <inttypes.h>
+#include "common/bytecode/bytecode.h"
 #include "filter-ast.h"
 #include "filter-parser.h"
-#include "filter-bytecode.h"
 #include "memstream.h"
 
 #include <common/compat/errno.h>
@@ -296,11 +296,16 @@ void filter_parser_ctx_free(struct filter_parser_ctx *parser_ctx)
 {
        int ret;
 
-       free_strings(&parser_ctx->allocated_strings);
-       filter_ast_free(parser_ctx->ast);
        ret = yylex_destroy(parser_ctx->scanner);
        if (ret)
                fprintf(stderr, "yylex_destroy error\n");
+
+       filter_ast_free(parser_ctx->ast);
+       free_strings(&parser_ctx->allocated_strings);
+       filter_ir_free(parser_ctx);
+       free(parser_ctx->bytecode);
+       free(parser_ctx->bytecode_reloc);
+
        free(parser_ctx);
 }
 
This page took 0.024431 seconds and 4 git commands to generate.