[empathy] Adapt to API change in folks_backend_get_persona_stores().



commit d4989c9be7b3c6fa016d703e2a32774d5f74f836
Author: Travis Reitter <travis reitter collabora co uk>
Date:   Fri Apr 29 13:57:05 2011 -0700

    Adapt to API change in folks_backend_get_persona_stores().
    
    Helps: bgo#648822 - Port Empathy to Folks 0.5.1

 libempathy/empathy-individual-manager.c |    6 ++++--
 libempathy/empathy-utils.c              |   15 +++++++--------
 2 files changed, 11 insertions(+), 10 deletions(-)
---
diff --git a/libempathy/empathy-individual-manager.c b/libempathy/empathy-individual-manager.c
index 00e685c..69e62f1 100644
--- a/libempathy/empathy-individual-manager.c
+++ b/libempathy/empathy-individual-manager.c
@@ -388,7 +388,8 @@ empathy_individual_manager_add_from_contact (EmpathyIndividualManager *self,
   FolksBackendStore *backend_store;
   FolksBackend *backend;
   FolksPersonaStore *persona_store;
-  GHashTable* details, *persona_stores;
+  GHashTable* details;
+  GeeMap *persona_stores;
   TpAccount *account;
   const gchar *store_id;
 
@@ -420,7 +421,7 @@ empathy_individual_manager_add_from_contact (EmpathyIndividualManager *self,
     }
 
   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)
     {
@@ -438,6 +439,7 @@ empathy_individual_manager_add_from_contact (EmpathyIndividualManager *self,
       aggregator_add_persona_from_details_cb, contact);
 
   g_hash_table_destroy (details);
+  g_object_unref (persona_store);
 
 finish:
   tp_clear_object (&backend);
diff --git a/libempathy/empathy-utils.c b/libempathy/empathy-utils.c
index bdec988..4d6506b 100644
--- a/libempathy/empathy-utils.c
+++ b/libempathy/empathy-utils.c
@@ -858,14 +858,14 @@ empathy_dup_persona_store_for_connection (TpConnection *connection)
       "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;
 
@@ -874,8 +874,7 @@ empathy_dup_persona_store_for_connection (TpConnection *connection)
           if (conn_cur == connection)
             result = persona_store;
         }
-
-      g_list_free (stores);
+      g_clear_object (&iter);
     }
 
   g_object_unref (backend);



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]