summaryrefslogtreecommitdiff
path: root/libavformat/srtdec.c
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-06-14 03:23:27 +0200
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-07-02 01:01:31 +0200
commit7186f4dd6329473bd8c0d1a29eed36f19cc5872c (patch)
treeab9ed96036f908033d0d2504fb886226f2584ae0 /libavformat/srtdec.c
parent572da6c5c0c1f3f4fc690b4dd47f22338b361fa4 (diff)
downloadffmpeg-7186f4dd6329473bd8c0d1a29eed36f19cc5872c.tar.gz
avformat/srtdec: Fix memleak upon read header failure
The already parsed subtitles (contained in an FFDemuxSubtitlesQueue) would leak if an error happened upon reading a subsequent subtitle. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> (cherry picked from commit c70409957c7332971f0e147729d769f6d2f95390) Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
Diffstat (limited to 'libavformat/srtdec.c')
-rw-r--r--libavformat/srtdec.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/libavformat/srtdec.c b/libavformat/srtdec.c
index 56bd0c43f6..67b245a123 100644
--- a/libavformat/srtdec.c
+++ b/libavformat/srtdec.c
@@ -207,6 +207,8 @@ static int srt_read_header(AVFormatContext *s)
ff_subtitles_queue_finalize(s, &srt->q);
end:
+ if (res < 0)
+ ff_subtitles_queue_clean(&srt->q);
av_bprint_finalize(&buf, NULL);
return res;
}