diff options
author | Wim Taymans <wim.taymans@gmail.com> | 2007-10-08 10:39:35 +0000 |
---|---|---|
committer | Wim Taymans <wim.taymans@gmail.com> | 2007-10-08 10:39:35 +0000 |
commit | 4865b3bf146fe7392aed1a9e2df2efcb63d19ead (patch) | |
tree | 05a5a6579e0a8101fdd6ccb31de3b9e4c753f43c /gst/rtpmanager/gstrtpssrcdemux.c | |
parent | e5a48677c1d9febf7f5d0ca170e3b91374a44343 (diff) | |
download | gst-plugins-bad-4865b3bf146fe7392aed1a9e2df2efcb63d19ead.tar.gz gst-plugins-bad-4865b3bf146fe7392aed1a9e2df2efcb63d19ead.tar.bz2 gst-plugins-bad-4865b3bf146fe7392aed1a9e2df2efcb63d19ead.zip |
gst/rtpmanager/gstrtpbin.c: Fix caps refcounting for payload maps.
Original commit message from CVS:
* gst/rtpmanager/gstrtpbin.c: (get_pt_map),
(gst_rtp_bin_clear_pt_map), (gst_rtp_bin_class_init):
Fix caps refcounting for payload maps.
When clearing payload maps, also clear sessions and streams payload
maps.
* gst/rtpmanager/gstrtpptdemux.c: (gst_rtp_pt_demux_get_caps),
(gst_rtp_pt_demux_clear_pt_map), (gst_rtp_pt_demux_chain),
(find_pad_for_pt):
Implement clearing the payload map.
* gst/rtpmanager/gstrtpsession.c:
(gst_rtp_session_event_send_rtp_sink):
Forward flush events instead of leaking them.
* gst/rtpmanager/gstrtpssrcdemux.c:
(gst_rtp_ssrc_demux_rtcp_sink_event):
Correctly refcount events before pushing them.
Diffstat (limited to 'gst/rtpmanager/gstrtpssrcdemux.c')
-rw-r--r-- | gst/rtpmanager/gstrtpssrcdemux.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/gst/rtpmanager/gstrtpssrcdemux.c b/gst/rtpmanager/gstrtpssrcdemux.c index 472f5f55..96e82ac2 100644 --- a/gst/rtpmanager/gstrtpssrcdemux.c +++ b/gst/rtpmanager/gstrtpssrcdemux.c @@ -386,9 +386,11 @@ gst_rtp_ssrc_demux_rtcp_sink_event (GstPad * pad, GstEvent * event) for (walk = demux->srcpads; walk; walk = g_slist_next (walk)) { GstRtpSsrcDemuxPad *pad = (GstRtpSsrcDemuxPad *) walk->data; + gst_event_ref (event); res &= gst_pad_push_event (pad->rtcp_pad, event); } GST_PAD_UNLOCK (demux); + gst_event_unref (event); break; } } |