summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Claessens <xavier.claessens@collabora.co.uk>2012-07-09 12:35:01 +0200
committerXavier Claessens <xavier.claessens@collabora.co.uk>2012-07-11 12:04:52 +0200
commiteff02cf76254af6b9169badcfe76cd7890a0df6b (patch)
treedebb2de3e2fbd349a106efdb8db68ab8c82bfcf1
parent6e8be05e1c1b5856575bb7d8404d4429824e4981 (diff)
McdAccountManagerDefault: Fix a possible double free
If the account is already in the hashtable, g_hash_table_insert() will set @removed as value, but free it since the key already in the table is kept. https://bugs.freedesktop.org/show_bug.cgi?id=51842
-rw-r--r--src/mcd-account-manager-default.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/mcd-account-manager-default.c b/src/mcd-account-manager-default.c
index deae1630..e156de1b 100644
--- a/src/mcd-account-manager-default.c
+++ b/src/mcd-account-manager-default.c
@@ -77,7 +77,7 @@ _delete_from_keyring (const McpAccountStorage *self,
{
/* flag the whole account as purged */
gchar *removed = g_strdup (account);
- g_hash_table_insert (amd->removed_accounts, removed, removed);
+ g_hash_table_replace (amd->removed_accounts, removed, removed);
}
else
{