[telepathy-gabble/master] gabble_muc_factory_foreach_channel: include tube channels as well
Guillaume Desmottes
guillaume.desmottes at collabora.co.uk
Wed Apr 15 09:28:42 PDT 2009
---
src/muc-factory.c | 17 ++++++++++++++++-
1 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/src/muc-factory.c b/src/muc-factory.c
index 47f1144..e7b581b 100644
--- a/src/muc-factory.c
+++ b/src/muc-factory.c
@@ -1252,12 +1252,27 @@ gabble_muc_factory_foreach_channel (TpChannelManager *manager,
GabbleMucFactory *fac = GABBLE_MUC_FACTORY (manager);
GabbleMucFactoryPrivate *priv = GABBLE_MUC_FACTORY_GET_PRIVATE (fac);
struct _ForeachData data;
+ GHashTableIter iter;
+ gpointer value;
data.user_data = user_data;
data.foreach = foreach;
g_hash_table_foreach (priv->text_channels, _foreach_slave, &data);
- g_hash_table_foreach (priv->tubes_channels, _foreach_slave, &data);
+
+ g_hash_table_iter_init (&iter, priv->tubes_channels);
+ while (g_hash_table_iter_next (&iter, NULL, &value))
+ {
+ TpExportableChannel *chan = TP_EXPORTABLE_CHANNEL (value);
+
+ /* Add channels of type Channel.Type.Tubes */
+ foreach (chan, user_data);
+
+ /* Add channels of type Channel.Type.{Stream|DBus}Tube which live in the
+ * SalutTubesChannel object */
+ gabble_tubes_channel_foreach (GABBLE_TUBES_CHANNEL (chan), foreach,
+ user_data);
+ }
}
--
1.5.6.5
More information about the telepathy-commits
mailing list