diff options
author | Andreas Rheinhardt <andreas.rheinhardt@gmail.com> | 2020-06-14 03:20:09 +0200 |
---|---|---|
committer | Andreas Rheinhardt <andreas.rheinhardt@gmail.com> | 2020-06-15 17:25:47 +0200 |
commit | d84b9ab4abb82e9f7d6dcab07de5e51ac721ba6b (patch) | |
tree | 7b9e02ce783a30c8c59c3def1663088888094356 | |
parent | f1724907424f92217823b6da2487715f0a1d36bc (diff) | |
download | ffmpeg-d84b9ab4abb82e9f7d6dcab07de5e51ac721ba6b.tar.gz |
avformat/mpsubdec: Fix memleak upon read header failure
The already parsed subtitles (contained in an FFDemuxSubtitlesQueue)
would leak if an error happened upon creating an AVStream.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
(cherry picked from commit a5ed8aeea4f4199e89520c3fdbd9d07ae7fc3c3f)
-rw-r--r-- | libavformat/mpsubdec.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/libavformat/mpsubdec.c b/libavformat/mpsubdec.c index 82c73457ea..e7b83a1d85 100644 --- a/libavformat/mpsubdec.c +++ b/libavformat/mpsubdec.c @@ -154,8 +154,10 @@ static int mpsub_read_header(AVFormatContext *s) } st = avformat_new_stream(s, NULL); - if (!st) - return AVERROR(ENOMEM); + if (!st) { + res = AVERROR(ENOMEM); + goto end; + } avpriv_set_pts_info(st, 64, pts_info.den, pts_info.num); st->codecpar->codec_type = AVMEDIA_TYPE_SUBTITLE; st->codecpar->codec_id = AV_CODEC_ID_TEXT; |