diff options
author | Carlos Garnacho <carlosg@gnome.org> | 2023-02-24 00:54:59 +0100 |
---|---|---|
committer | Carlos Garnacho <carlosg@gnome.org> | 2023-02-24 02:16:46 +0100 |
commit | c874630e0275cf7328e983c3aab5a3aa3451cbb2 (patch) | |
tree | bd7af4a0e2137c25ef4b48b7f3b951dfed1cfdd9 /src/libtracker-sparql/bus/tracker-bus-statement.c | |
parent | 5ab9ce6c9e83d6998ac8ea5e9ee7a9557b9aacd7 (diff) | |
download | tracker-c874630e0275cf7328e983c3aab5a3aa3451cbb2.tar.gz |
bus: Plug GVariant leaks
There were a couple of GVariant leaks, in the handling of
DBus replies and TrackerSparqlStatement parameter handling.
Shuffle the variant floating reference ownership of parameters
so it's "owned" by the hash table, and not picked by the
first GVariantBuilder.
Diffstat (limited to 'src/libtracker-sparql/bus/tracker-bus-statement.c')
-rw-r--r-- | src/libtracker-sparql/bus/tracker-bus-statement.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/src/libtracker-sparql/bus/tracker-bus-statement.c b/src/libtracker-sparql/bus/tracker-bus-statement.c index d24af164e..e5c6e9ef9 100644 --- a/src/libtracker-sparql/bus/tracker-bus-statement.c +++ b/src/libtracker-sparql/bus/tracker-bus-statement.c @@ -60,7 +60,7 @@ tracker_bus_statement_bind_string (TrackerSparqlStatement *stmt, g_hash_table_insert (bus_stmt->arguments, g_strdup (name), - g_variant_new_string (value)); + g_variant_ref_sink (g_variant_new_string (value))); } static void @@ -72,7 +72,7 @@ tracker_bus_statement_bind_boolean (TrackerSparqlStatement *stmt, g_hash_table_insert (bus_stmt->arguments, g_strdup (name), - g_variant_new_boolean (value)); + g_variant_ref_sink (g_variant_new_boolean (value))); } static void @@ -84,7 +84,7 @@ tracker_bus_statement_bind_double (TrackerSparqlStatement *stmt, g_hash_table_insert (bus_stmt->arguments, g_strdup (name), - g_variant_new_double (value)); + g_variant_ref_sink (g_variant_new_double (value))); } static void @@ -96,7 +96,7 @@ tracker_bus_statement_bind_int (TrackerSparqlStatement *stmt, g_hash_table_insert (bus_stmt->arguments, g_strdup (name), - g_variant_new_int64 (value)); + g_variant_ref_sink (g_variant_new_int64 (value))); } static void @@ -110,7 +110,7 @@ tracker_bus_statement_bind_datetime (TrackerSparqlStatement *stmt, date_str = tracker_date_format_iso8601 (value); g_hash_table_insert (bus_stmt->arguments, g_strdup (name), - g_variant_new_string (date_str)); + g_variant_ref_sink (g_variant_new_string (date_str))); g_free (date_str); } |