[farsight2/master] Remove known ssrcs for a stream when the stream is removed

Olivier Crête olivier.crete at collabora.co.uk
Tue Dec 23 15:23:42 PST 2008


---
 gst/fsrtpconference/fs-rtp-session.c |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/gst/fsrtpconference/fs-rtp-session.c b/gst/fsrtpconference/fs-rtp-session.c
index e296563..4a61a01 100644
--- a/gst/fsrtpconference/fs-rtp-session.c
+++ b/gst/fsrtpconference/fs-rtp-session.c
@@ -1248,6 +1248,11 @@ fs_rtp_session_constructed (GObject *object)
 }
 
 
+static gboolean
+_remove_stream_from_ht (gpointer key, gpointer value, gpointer user_data)
+{
+  return (value == user_data);
+}
 
 static void
 _remove_stream (gpointer user_data,
@@ -1258,6 +1263,9 @@ _remove_stream (gpointer user_data,
   FS_RTP_SESSION_LOCK (self);
   self->priv->streams =
     g_list_remove_all (self->priv->streams, where_the_object_was);
+
+  g_hash_table_foreach_remove (self->priv->ssrc_streams, _remove_stream_from_ht,
+      where_the_object_was);
   FS_RTP_SESSION_UNLOCK (self);
 }
 
-- 
1.5.6.5




More information about the farsight-commits mailing list