From 40fcba6ea45443d1c8c27078bdbab47aa36c7915 Mon Sep 17 00:00:00 2001 From: "james.lin" Date: Tue, 17 Apr 2018 11:14:01 +0800 Subject: [PATCH 02/39] interim fix vc1 stream may memory leak when pending Signed-off-by: james.lin Signed-off-by: Jeffy Chen --- gst/mpegtsdemux/tsdemux.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gst/mpegtsdemux/tsdemux.c b/gst/mpegtsdemux/tsdemux.c index 6174850..339b362 100644 --- a/gst/mpegtsdemux/tsdemux.c +++ b/gst/mpegtsdemux/tsdemux.c @@ -3438,6 +3438,14 @@ gst_ts_demux_push_pending_data (GstTSDemux * demux, TSDemuxStream * stream, if (G_UNLIKELY (stream->pending_ts && !check_pending_buffers (demux))) { if (buffer) { + GList *walk; + for (walk = demux->program->stream_list; walk; walk = g_list_next (walk)) { + MpegTSBaseStream *bs = (MpegTSBaseStream*)walk->data; + if (bs->registration_id == DRF_ID_VC1) { + gst_buffer_unref(buffer); + goto beach; + } + } PendingBuffer *pend; pend = g_slice_new0 (PendingBuffer); pend->buffer = buffer; -- 2.20.1