From 6099378bc6ed3a50c0774dfb266ffd60e3b7bdd7 Mon Sep 17 00:00:00 2001 From: Thomas Haller Date: Wed, 3 Jun 2015 17:59:53 +0200 Subject: [PATCH] libnm: fix take ownership of floating argument in NMSecretAgentOld:get_secrets_cb() The previous patch 9ffcecf86ad2230860cf8fdf5667884782ee64dd was completely wrong. It tried to fix callers that provided a floating GVariant reference. We require the caller to unref @secrets, so the correct fix it to ensure that the reference is not floating. Fixes: 6793a32a8c5445103ba3680bb5e4c31727096099 (cherry picked from commit 9ffcecf86ad2230860cf8fdf5667884782ee64dd) (cherry picked from commit 2071e4794f6cdf551d31584c17c8896d7029e3ac) --- libnm/nm-secret-agent-old.c | 1 + 1 file changed, 1 insertion(+) diff --git a/libnm/nm-secret-agent-old.c b/libnm/nm-secret-agent-old.c index 5da8ef655f..6df54d433d 100644 --- a/libnm/nm-secret-agent-old.c +++ b/libnm/nm-secret-agent-old.c @@ -301,6 +301,7 @@ get_secrets_cb (NMSecretAgentOld *self, if (error) g_dbus_method_invocation_return_gerror (info->context, error); else { + g_variant_take_ref (secrets); g_dbus_method_invocation_return_value (info->context, g_variant_new ("(@a{sa{sv}})", secrets)); }