summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSimon McVittie <simon.mcvittie@collabora.co.uk>2010-05-26 16:07:33 +0100
committerSimon McVittie <simon.mcvittie@collabora.co.uk>2010-05-26 16:07:33 +0100
commitfd0180aeca1b266bf4212ce63ca01c36bd151762 (patch)
tree4d9c774b9009e6f2766ee1f50e7c8ff2e1a7d41c
parente183be2acb77ebd9117723ff3eb8da874aa8ab16 (diff)
downloadtelepathy-mission-control-fd0180aeca1b266bf4212ce63ca01c36bd151762.tar.gz
_mcd_account_migrate_secrets: don't assume that a borrowed string remains valid
-rw-r--r--src/mcd-account.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/mcd-account.c b/src/mcd-account.c
index 7cd78d99..0b2a652f 100644
--- a/src/mcd-account.c
+++ b/src/mcd-account.c
@@ -350,13 +350,14 @@ _migrate_secrets_get_cb (McdAccount *account,
const GError *error,
gpointer user_data)
{
- const gchar *name = user_data;
+ gchar *name = user_data;
if (error != NULL || value == NULL)
return;
set_parameter (account, name, value, _migrate_secrets_set_cb,
user_data);
+ g_free (name);
}
static void
@@ -377,9 +378,10 @@ _mcd_account_migrate_secrets (McdAccount *account)
{
if (p->flags & TP_CONN_MGR_PARAM_FLAG_SECRET)
{
- get_parameter_from_file (account, p->name, _migrate_secrets_get_cb,
- p->name);
+ gchar *name = g_strdup (p->name);
+ get_parameter_from_file (account, name, _migrate_secrets_get_cb,
+ name);
}
}
}