diff options
author | Vivek Dasmohapatra <vivek@collabora.co.uk> | 2010-07-07 14:11:06 +0100 |
---|---|---|
committer | Vivek Dasmohapatra <vivek@collabora.co.uk> | 2010-07-07 14:11:06 +0100 |
commit | 73f16c5844184fa6a88dd3cc858a436bfbfdcace (patch) | |
tree | 074621e28cf5d4cd42f876b40ed79a5af2c285a0 /src | |
parent | 143885cfa7d023800551820fb3253649469697bf (diff) |
Can't remove the watch hash entry until the individual watches have been removed
Diffstat (limited to 'src')
-rw-r--r-- | src/mcd-account-manager-sso.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/mcd-account-manager-sso.c b/src/mcd-account-manager-sso.c index 501b2dcb..427af93f 100644 --- a/src/mcd-account-manager-sso.c +++ b/src/mcd-account-manager-sso.c @@ -330,6 +330,8 @@ static void unwatch_account_keys (McdAccountManagerSso *sso, watch->watch = NULL; free_watch_data (watch); } + + g_hash_table_remove (sso->watches, watch_key); } static void _sso_updated (AgAccount * account, @@ -500,7 +502,6 @@ static void _sso_deleted (GObject *object, g_hash_table_remove (sso->accounts, signalled_name); /* stop watching for updates */ - g_hash_table_remove (sso->watches, GUINT_TO_POINTER (id)); unwatch_account_keys (sso, id); g_signal_emit_by_name (mcpa, "deleted", signalled_name); @@ -1065,7 +1066,6 @@ _delete (const McpAccountStorage *self, g_hash_table_remove (sso->id_name_map, GUINT_TO_POINTER (id)); /* stop watching for updates */ - g_hash_table_remove (sso->watches, GUINT_TO_POINTER (id)); unwatch_account_keys (sso, id); } else |