mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-28 20:53:54 +02:00
avformat/matroskaenc: Fix potential leak of cached packet
If mkv_write_trailer() is not called, the cached audio packet might leak; so unref it in mkv_deinit(). Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
This commit is contained in:
parent
d65aaf8ea9
commit
4470ab1e0e
@ -390,6 +390,8 @@ static void mkv_deinit(AVFormatContext *s)
|
||||
{
|
||||
MatroskaMuxContext *mkv = s->priv_data;
|
||||
|
||||
av_packet_unref(&mkv->cur_audio_pkt);
|
||||
|
||||
ffio_free_dyn_buf(&mkv->cluster_bc);
|
||||
ffio_free_dyn_buf(&mkv->info_bc);
|
||||
ffio_free_dyn_buf(&mkv->tracks_bc);
|
||||
@ -2534,7 +2536,6 @@ static int mkv_write_trailer(AVFormatContext *s)
|
||||
// check if we have an audio packet cached
|
||||
if (mkv->cur_audio_pkt.size > 0) {
|
||||
ret = mkv_write_packet_internal(s, &mkv->cur_audio_pkt, 0);
|
||||
av_packet_unref(&mkv->cur_audio_pkt);
|
||||
if (ret < 0) {
|
||||
av_log(s, AV_LOG_ERROR,
|
||||
"Could not write cached audio packet ret:%d\n", ret);
|
||||
|
Loading…
Reference in New Issue
Block a user