summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garnacho <carlosg@gnome.org>2021-03-20 13:23:18 +0100
committerCarlos Garnacho <carlosg@gnome.org>2021-03-26 12:20:59 +0100
commit45b44b9658db0762d851de9adf852e53f320fb19 (patch)
tree5d8f4aebb18f804930fa7f025fc25bd70fc4f42f
parent19ce81876f832561e47b3eff3ca0e45ec6a170fc (diff)
downloadtracker-45b44b9658db0762d851de9adf852e53f320fb19.tar.gz
libtracker-sparql: Plug leak on API misuse
If we use the g_return_val_if_fail(), the string builder is leaked. CID: #1501138
-rw-r--r--src/libtracker-sparql/tracker-namespace-manager.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/libtracker-sparql/tracker-namespace-manager.c b/src/libtracker-sparql/tracker-namespace-manager.c
index e9b2456fd..6a4ebc315 100644
--- a/src/libtracker-sparql/tracker-namespace-manager.c
+++ b/src/libtracker-sparql/tracker-namespace-manager.c
@@ -300,7 +300,7 @@ char *
tracker_namespace_manager_print_turtle (TrackerNamespaceManager *self)
{
TrackerNamespaceManagerPrivate *priv;
- GString *result = g_string_new ("");
+ GString *result;
GHashTableIter iter;
const char *prefix;
const char *namespace;
@@ -309,6 +309,8 @@ tracker_namespace_manager_print_turtle (TrackerNamespaceManager *self)
priv = GET_PRIVATE (self);
+ result = g_string_new ("");
+
g_hash_table_iter_init (&iter, priv->prefix_to_namespace);
while (g_hash_table_iter_next (&iter, (gpointer *)&prefix, (gpointer *)&namespace)) {
g_string_append_printf (result, "@prefix %s: <%s> .\n", prefix, namespace);