diff options
author | Wim Taymans <wim.taymans@collabora.co.uk> | 2009-05-05 16:48:37 +0200 |
---|---|---|
committer | Wim Taymans <wim.taymans@collabora.co.uk> | 2009-05-05 16:50:14 +0200 |
commit | 46139253bcb1ddc32fc8987c194c40d9c622e993 (patch) | |
tree | d46fc3ac53cd55c4eb00d10d76ca800247809108 | |
parent | 179f5bb850d0df3841889d88e3ee7ee96cc914aa (diff) | |
download | gst-plugins-bad-46139253bcb1ddc32fc8987c194c40d9c622e993.tar.gz gst-plugins-bad-46139253bcb1ddc32fc8987c194c40d9c622e993.tar.bz2 gst-plugins-bad-46139253bcb1ddc32fc8987c194c40d9c622e993.zip |
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
-rw-r--r-- | gst/rtpmanager/gstrtpssrcdemux.c | 8 |
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), |