]> git.0d.be Git - empathy.git/blobdiff - libempathy-gtk/empathy-roster-model-aggregator.c
Updated Kannada translation
[empathy.git] / libempathy-gtk / empathy-roster-model-aggregator.c
index b82fd16201dd300d60ed9d9bcd43a8b972d62ab0..26c8f2ae7909c4d585d74fea0f93ab817d301e27 100644 (file)
@@ -175,7 +175,9 @@ populate_individuals (EmpathyRosterModelAggregator *self)
   iter = gee_map_map_iterator (individuals);
   while (gee_map_iterator_next (iter))
     {
-      add_individual (self, gee_map_iterator_get_value (iter));
+      FolksIndividual *individual = gee_map_iterator_get_value (iter);
+      add_individual (self, individual);
+      g_object_unref (individual);
     }
   g_clear_object (&iter);
 }
@@ -195,7 +197,9 @@ aggregator_individuals_changed_cb (FolksIndividualAggregator *aggregator,
 
       while (iter != NULL && gee_iterator_next (iter))
         {
-          add_individual (self, gee_iterator_get (iter));
+          FolksIndividual *individual = gee_iterator_get (iter);
+          add_individual (self, individual);
+          g_object_unref (individual);
         }
       g_clear_object (&iter);
     }
@@ -206,7 +210,9 @@ aggregator_individuals_changed_cb (FolksIndividualAggregator *aggregator,
 
       while (iter != NULL && gee_iterator_next (iter))
         {
-          remove_individual (self, gee_iterator_get (iter));
+          FolksIndividual *individual = gee_iterator_get (iter);
+          remove_individual (self, individual);
+          g_object_unref (individual);
         }
       g_clear_object (&iter);
     }
@@ -276,7 +282,7 @@ empathy_roster_model_aggregator_constructed (GObject *object)
     chain_up (object);
 
   if (self->priv->aggregator == NULL)
-    self->priv->aggregator = folks_individual_aggregator_new ();
+    self->priv->aggregator = folks_individual_aggregator_dup ();
 
   g_assert (FOLKS_IS_INDIVIDUAL_AGGREGATOR (self->priv->aggregator));
 
@@ -405,6 +411,7 @@ empathy_roster_model_aggregator_dup_groups_for_individual (
 
       while (iter != NULL && gee_iterator_next (iter))
         {
+          /* Transfer ownership: */
           groups_list = g_list_prepend (groups_list, gee_iterator_get (iter));
         }
       g_clear_object (&iter);