summaryrefslogtreecommitdiffstats
path: root/gst/rtpmanager/gstrtpssrcdemux.c
diff options
context:
space:
mode:
authorWim Taymans <wim.taymans@collabora.co.uk>2009-05-05 16:48:37 +0200
committerTim-Philipp Müller <tim.muller@collabora.co.uk>2009-08-11 02:30:41 +0100
commit11607c4d638f7ae58ebdbbd532bad49d82a6e0f8 (patch)
tree324d17c2124e677ac9001779033efaf1029db7f4 /gst/rtpmanager/gstrtpssrcdemux.c
parent3482b47666d63eb85272314a95b645c68f4d7fbc (diff)
rtpssrcdemux: drop unexpected RTCP packets
We usually only get SR packets in our chain function but if an invalid packet contains the SR packet after the RR packet, we must not fail but simply ignore the malformed packet. Fixes #581375
Diffstat (limited to 'gst/rtpmanager/gstrtpssrcdemux.c')
-rw-r--r--gst/rtpmanager/gstrtpssrcdemux.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/gst/rtpmanager/gstrtpssrcdemux.c b/gst/rtpmanager/gstrtpssrcdemux.c
index 64394c45..b9a279c2 100644
--- a/gst/rtpmanager/gstrtpssrcdemux.c
+++ b/gst/rtpmanager/gstrtpssrcdemux.c
@@ -483,7 +483,7 @@ gst_rtp_ssrc_demux_rtcp_chain (GstPad * pad, GstBuffer * buf)
NULL);
break;
default:
- goto invalid_rtcp;
+ goto unexpected_rtcp;
}
GST_DEBUG_OBJECT (demux, "received RTCP of SSRC %08x", ssrc);
@@ -511,6 +511,12 @@ invalid_rtcp:
gst_buffer_unref (buf);
return GST_FLOW_ERROR;
}
+unexpected_rtcp:
+ {
+ GST_DEBUG_OBJECT (demux, "dropping unexpected RTCP packet");
+ gst_buffer_unref (buf);
+ return GST_FLOW_OK;
+ }
create_failed:
{
GST_ELEMENT_ERROR (demux, STREAM, DECODE, (NULL),