[telepathy-salut/master] salut_muc_manager_foreach_channel: include tube channels as well
Guillaume Desmottes
guillaume.desmottes at collabora.co.uk
Wed Apr 15 07:27:29 PDT 2009
---
src/salut-muc-manager.c | 17 ++++++++++++++++-
1 files changed, 16 insertions(+), 1 deletions(-)
diff --git a/src/salut-muc-manager.c b/src/salut-muc-manager.c
index 8755817..bdd07d8 100644
--- a/src/salut-muc-manager.c
+++ b/src/salut-muc-manager.c
@@ -322,12 +322,27 @@ salut_muc_manager_foreach_channel (TpChannelManager *iface,
SalutMucManager *fac = SALUT_MUC_MANAGER (iface);
SalutMucManagerPrivate *priv = SALUT_MUC_MANAGER_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 */
+ salut_tubes_channel_foreach (SALUT_TUBES_CHANNEL (chan), foreach,
+ user_data);
+ }
}
static const gchar * const muc_channel_fixed_properties[] = {
--
1.5.6.5
More information about the telepathy-commits
mailing list