summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDaiki Ueno <dueno@src.gnome.org>2018-07-20 10:57:14 +0200
committerDaiki Ueno <dueno@src.gnome.org>2018-07-20 11:01:08 +0200
commit9ca8f323a9c09ce0799833e9df9a4f23ab61945f (patch)
tree7d2ff8127652f21d4f58cd4d36dbd51c5b289472
parent83774b8b93ea3f416ca1beb9e32bdcc379c268c7 (diff)
downloadlibsecret-9ca8f323a9c09ce0799833e9df9a4f23ab61945f.tar.gz
secret-session: Avoid double-free in service_encode_plain_secret()
As g_variant_builder_add_value() takes ownership of a floating GVariant, we don't need to unref it afterwards.
-rw-r--r--libsecret/secret-session.c2
1 files changed, 0 insertions, 2 deletions
diff --git a/libsecret/secret-session.c b/libsecret/secret-session.c
index 43bee9f..1860155 100644
--- a/libsecret/secret-session.c
+++ b/libsecret/secret-session.c
@@ -612,12 +612,10 @@ service_encode_plain_secret (SecretSession *session,
child = g_variant_new_from_data (G_VARIANT_TYPE ("ay"), "", 0, TRUE, NULL, NULL);
g_variant_builder_add_value (builder, child);
- g_variant_unref (child);
child = g_variant_new_from_data (G_VARIANT_TYPE ("ay"), secret, n_secret, TRUE,
secret_value_unref, secret_value_ref (value));
g_variant_builder_add_value (builder, child);
- g_variant_unref (child);
g_variant_builder_add (builder, "s", secret_value_get_content_type (value));
return TRUE;