ffmpeg | branch: master | Sasi Inguva <isasi-at-google....@ffmpeg.org> | Thu Jan 26 11:26:46 2017 -0800| [e4a1d87ef88d57cca21ec425120c6a370fdb0210] | committer: Michael Niedermayer
lavf/matroskaenc.c: Free dyn bufs in mkv_free. Fixes memory leaks when muxing fails. Signed-off-by: Sasi Inguva <is...@google.com> Signed-off-by: Michael Niedermayer <mich...@niedermayer.cc> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=e4a1d87ef88d57cca21ec425120c6a370fdb0210 --- libavformat/matroskaenc.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index f731b67..88f6c64 100644 --- a/libavformat/matroskaenc.c +++ b/libavformat/matroskaenc.c @@ -393,6 +393,23 @@ static void put_xiph_size(AVIOContext *pb, int size) * Free the members allocated in the mux context. */ static void mkv_free(MatroskaMuxContext *mkv) { + uint8_t* buf; + if (mkv->dyn_bc) { + avio_close_dyn_buf(mkv->dyn_bc, &buf); + av_free(buf); + } + if (mkv->info_bc) { + avio_close_dyn_buf(mkv->info_bc, &buf); + av_free(buf); + } + if (mkv->tracks_bc) { + avio_close_dyn_buf(mkv->tracks_bc, &buf); + av_free(buf); + } + if (mkv->tags_bc) { + avio_close_dyn_buf(mkv->tags_bc, &buf); + av_free(buf); + } if (mkv->main_seekhead) { av_freep(&mkv->main_seekhead->entries); av_freep(&mkv->main_seekhead); _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog