|
|
|
@@ -334,6 +334,13 @@ static void mpegts_close_filter(MpegTSContext *ts, MpegTSFilter *filter) |
|
|
|
pid = filter->pid; |
|
|
|
if (filter->type == MPEGTS_SECTION) |
|
|
|
av_freep(&filter->u.section_filter.section_buf); |
|
|
|
else if (filter->type == MPEGTS_PES) { |
|
|
|
/* referenced private data will be freed later in |
|
|
|
* av_close_input_stream */ |
|
|
|
if (!((PESContext *)filter->u.pes_filter.opaque)->st) { |
|
|
|
av_freep(&filter->u.pes_filter.opaque); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
av_free(filter); |
|
|
|
ts->pids[pid] = NULL; |
|
|
|
|