diff options
author | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2010-11-23 04:04:49 +0300 |
---|---|---|
committer | Baptiste Coudurier <baptiste.coudurier@gmail.com> | 2010-11-23 04:04:49 +0300 |
commit | 175272cb076072b674f15033e9db832c6282595c (patch) | |
tree | 3bcb33dbc10c04bdb59bf4ee67a83a9bd966af85 /libavformat/mpegts.c | |
parent | 798c6facb7bd3ad5b46baf0e12ff02bc9c6e1bb6 (diff) |
10l, fix memleak, forgot to free mp4_dec_config_descr
Originally committed as revision 25807 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat/mpegts.c')
-rw-r--r-- | libavformat/mpegts.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/libavformat/mpegts.c b/libavformat/mpegts.c index bceef6f210..172f80f776 100644 --- a/libavformat/mpegts.c +++ b/libavformat/mpegts.c @@ -956,7 +956,7 @@ static void pmt_cb(MpegTSFilter *filter, const uint8_t *section, int section_len } p += program_info_length; if (p >= p_end) - return; + goto out; // stop parsing after pmt, we found header if (!ts->stream->nb_streams) @@ -983,7 +983,7 @@ static void pmt_cb(MpegTSFilter *filter, const uint8_t *section, int section_len } if (!st) - return; + goto out; if (!pes->stream_type) mpegts_set_stream_info(st, pes, stream_type, prog_reg_desc); @@ -1082,8 +1082,11 @@ static void pmt_cb(MpegTSFilter *filter, const uint8_t *section, int section_len } p = desc_list_end; } + /* all parameters are there */ mpegts_close_filter(ts, filter); + out: + av_free(mp4_dec_config_descr); } static void pat_cb(MpegTSFilter *filter, const uint8_t *section, int section_len) |