[Telepathy-commits] [telepathy-salut/master] salut_muc_manager_ensure_tubes_channel: let the caller announce the channel

Guillaume Desmottes guillaume.desmottes at collabora.co.uk
Wed Mar 11 09:15:34 PDT 2009


---
 src/salut-muc-manager.c |    9 +++++++--
 src/salut-muc-manager.h |    3 ++-
 2 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/src/salut-muc-manager.c b/src/salut-muc-manager.c
index 9112683..8cdc60e 100644
--- a/src/salut-muc-manager.c
+++ b/src/salut-muc-manager.c
@@ -1114,10 +1114,12 @@ salut_muc_manager_handle_si_stream_request (SalutMucManager *self,
   salut_tubes_channel_bytestream_offered (chan, bytestream, msg);
 }
 
+/* Caller is reponsible of announcing the channel if created */
 SalutTubesChannel *
 salut_muc_manager_ensure_tubes_channel (SalutMucManager *self,
                                         TpHandle handle,
-                                        TpHandle actor)
+                                        TpHandle actor,
+                                        gboolean *created)
 {
   SalutMucManagerPrivate *priv = SALUT_MUC_MANAGER_GET_PRIVATE (self);
   SalutTubesChannel *tubes_chan;
@@ -1127,13 +1129,16 @@ salut_muc_manager_ensure_tubes_channel (SalutMucManager *self,
   if (tubes_chan != NULL)
     {
       g_object_ref (tubes_chan);
+      *created = FALSE;
       return tubes_chan;
     }
 
-  tubes_chan = create_tubes_channel (self, handle, actor, NULL, TRUE, NULL,
+
+  tubes_chan = create_tubes_channel (self, handle, actor, NULL, FALSE, NULL,
       FALSE, NULL);
   g_assert (tubes_chan != NULL);
   g_object_ref (tubes_chan);
 
+  *created = TRUE;
   return tubes_chan;
 }
diff --git a/src/salut-muc-manager.h b/src/salut-muc-manager.h
index 38e57cf..6c88094 100644
--- a/src/salut-muc-manager.h
+++ b/src/salut-muc-manager.h
@@ -76,7 +76,8 @@ void salut_muc_manager_handle_si_stream_request (SalutMucManager *muc_manager,
     const gchar *stream_id, GibberXmppStanza *msg);
 
 SalutTubesChannel * salut_muc_manager_ensure_tubes_channel (
-    SalutMucManager *muc_manager, TpHandle handle, TpHandle actor);
+    SalutMucManager *muc_manager, TpHandle handle, TpHandle actor,
+    gboolean *created);
 
 
 G_END_DECLS
-- 
1.5.6.5




More information about the telepathy-commits mailing list