FolksBackendStore *backend_store;
FolksBackend *backend;
FolksPersonaStore *persona_store;
- GHashTable* details, *persona_stores;
+ GHashTable* details;
+ GeeMap *persona_stores;
TpAccount *account;
const gchar *store_id;
}
persona_stores = folks_backend_get_persona_stores (backend);
- persona_store = g_hash_table_lookup (persona_stores, store_id);
+ persona_store = gee_map_get (persona_stores, store_id);
if (persona_store == NULL)
{
aggregator_add_persona_from_details_cb, contact);
g_hash_table_destroy (details);
+ g_object_unref (persona_store);
finish:
tp_clear_object (&backend);
"telepathy");
if (backend != NULL)
{
- GHashTable *stores_hash;
- GList *stores, *l;
+ GeeMap *stores_map;
+ GeeMapIterator *iter;
- stores_hash = folks_backend_get_persona_stores (backend);
- stores = g_hash_table_get_values (stores_hash);
- for (l = stores; l != NULL && result == NULL; l = l->next)
+ stores_map = folks_backend_get_persona_stores (backend);
+ iter = gee_map_map_iterator (stores_map);
+ while (gee_map_iterator_next (iter))
{
- TpfPersonaStore *persona_store = TPF_PERSONA_STORE (l->data);
+ TpfPersonaStore *persona_store = gee_map_iterator_get_value (iter);
TpAccount *account;
TpConnection *conn_cur;
if (conn_cur == connection)
result = persona_store;
}
-
- g_list_free (stores);
+ g_clear_object (&iter);
}
g_object_unref (backend);