[Telepathy-commits] [telepathy-gabble/master] GabbleMediaChannel: pass RelayInfo through to streams on creation

Simon McVittie simon.mcvittie at collabora.co.uk
Wed Mar 4 04:45:04 PST 2009


---
 src/media-channel.c |    2 +-
 src/media-stream.c  |   15 ++++++++++++++-
 src/media-stream.h  |    2 +-
 3 files changed, 16 insertions(+), 3 deletions(-)

diff --git a/src/media-channel.c b/src/media-channel.c
index 1455874..69e33c2 100644
--- a/src/media-channel.c
+++ b/src/media-channel.c
@@ -2347,7 +2347,7 @@ construct_stream (GabbleMediaChannel *chan,
       priv->object_path, id);
 
   stream = gabble_media_stream_new (object_path, c, name, id,
-      nat_traversal);
+      nat_traversal, relays);
 
   DEBUG ("%p: created new MediaStream %p for content '%s'", chan, stream, name);
 
diff --git a/src/media-stream.c b/src/media-stream.c
index 2e1eef9..ca482ba 100644
--- a/src/media-stream.c
+++ b/src/media-stream.c
@@ -159,17 +159,30 @@ gabble_media_stream_new (const gchar *object_path,
                          GabbleJingleContent *content,
                          const gchar *name,
                          guint id,
-                         const gchar *nat_traversal)
+                         const gchar *nat_traversal,
+                         const GPtrArray *relay_info)
 {
+  GPtrArray *empty = NULL;
+
   g_return_val_if_fail (GABBLE_IS_JINGLE_MEDIA_RTP (content), NULL);
 
+  if (relay_info == NULL)
+    {
+      empty = g_ptr_array_sized_new (0);
+      relay_info = empty;
+    }
+
   return g_object_new (GABBLE_TYPE_MEDIA_STREAM,
       "object-path", object_path,
       "content", content,
       "name", name,
       "id", id,
       "nat-traversal", nat_traversal,
+      "relay-info", relay_info,
       NULL);
+
+  if (empty != NULL)
+    g_ptr_array_free (empty, TRUE);
 }
 
 TpMediaStreamType
diff --git a/src/media-stream.h b/src/media-stream.h
index 59ef5f8..bb7b309 100644
--- a/src/media-stream.h
+++ b/src/media-stream.h
@@ -96,7 +96,7 @@ void gabble_media_stream_accept_pending_local_send (GabbleMediaStream *stream);
 
 GabbleMediaStream *gabble_media_stream_new (const gchar *object_path,
     GabbleJingleContent *content, const gchar *name, guint id,
-    const gchar *nat_traversal);
+    const gchar *nat_traversal, const GPtrArray *relays);
 TpMediaStreamType gabble_media_stream_get_media_type (GabbleMediaStream *self);
 
 G_END_DECLS
-- 
1.5.6.5




More information about the telepathy-commits mailing list