[farsight2/master] rtp: Remove pad block cb when destroying substream

Olivier Crête olivier.crete at collabora.co.uk
Mon Jun 15 10:37:35 PDT 2009


---
 gst/fsrtpconference/fs-rtp-substream.c |   13 ++++++++-----
 1 files changed, 8 insertions(+), 5 deletions(-)

diff --git a/gst/fsrtpconference/fs-rtp-substream.c b/gst/fsrtpconference/fs-rtp-substream.c
index 034bc20..e606783 100644
--- a/gst/fsrtpconference/fs-rtp-substream.c
+++ b/gst/fsrtpconference/fs-rtp-substream.c
@@ -1072,6 +1072,11 @@ fs_rtp_sub_stream_new (FsRtpConference *conference,
 }
 
 static void
+do_nothing_blocked_callback (GstPad *pad, gboolean blocked, gpointer user_data)
+{
+}
+
+static void
 fs_rtp_sub_stream_try_stop (FsRtpSubStream *substream)
 {
   FS_RTP_SESSION_LOCK (substream->priv->session);
@@ -1088,6 +1093,9 @@ fs_rtp_sub_stream_try_stop (FsRtpSubStream *substream)
     substream->priv->rtpbin_unlinked_sig = 0;
   }
 
+  gst_pad_set_blocked_async (substream->priv->rtpbin_pad, FALSE,
+      do_nothing_blocked_callback, NULL);
+
   if (substream->priv->output_ghostpad)
     gst_pad_set_active (substream->priv->output_ghostpad, FALSE);
 
@@ -1290,11 +1298,6 @@ _rtpbin_pad_have_data_callback (GstPad *pad, GstMiniObject *miniobj,
 }
 
 static void
-do_nothing_blocked_callback (GstPad *pad, gboolean blocked, gpointer user_data)
-{
-}
-
-static void
 _rtpbin_pad_blocked_callback (GstPad *pad, gboolean blocked, gpointer user_data)
 {
   FsRtpSubStream *substream = user_data;
-- 
1.5.6.5




More information about the farsight-commits mailing list