summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2023-02-24 00:52:22 +0100
committerCarlos Garnacho <carlosg@gnome.org>2023-02-24 00:52:22 +0100
commit5ab9ce6c9e83d6998ac8ea5e9ee7a9557b9aacd7 (patch)
tree94e55165f85abcc8058c20479a56aa9d77aea3fd /src
parent6c0e205c308614ebc23e951003cf220678fc9695 (diff)
downloadtracker-5ab9ce6c9e83d6998ac8ea5e9ee7a9557b9aacd7.tar.gz
core: Plug a possible leak in TrackerGrammarParser
If a parsing error is raised, the array holding the state stack for errors is being leaked.
Diffstat (limited to 'src')
-rw-r--r--src/libtracker-sparql/core/tracker-sparql-parser.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/src/libtracker-sparql/core/tracker-sparql-parser.c b/src/libtracker-sparql/core/tracker-sparql-parser.c
index 5ed15e2f9..ac4161e43 100644
--- a/src/libtracker-sparql/core/tracker-sparql-parser.c
+++ b/src/libtracker-sparql/core/tracker-sparql-parser.c
@@ -793,6 +793,7 @@ tracker_grammar_parser_apply (TrackerGrammarParser *parser,
if (!tracker_grammar_parser_read (parser, &state)) {
tracker_parser_state_propagate_error (parser, &state, error);
tracker_node_tree_free (state.node_tree);
+ g_ptr_array_unref (state.error_rules);
g_free (state.rule_states.rules);
return NULL;
}