aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-01-07 14:55:48 +0100
committerAndreas Rheinhardt <andreas.rheinhardt@gmail.com>2020-07-02 23:44:23 +0200
commitf078e402828674f25144c7202a2e7a84f50e7cfd (patch)
treed1151167b41546a659b22c429e246a819c6a540e
parent674cbe52e96d6367e26bc37a746701af5a374181 (diff)
downloadffmpeg-f078e402828674f25144c7202a2e7a84f50e7cfd.tar.gz
avformat/wtvdec: Fix memleak when reading header fails
Fixes #8314. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com> Reviewed-by: Peter Ross <pross@xvid.org> Signed-off-by: James Almer <jamrial@gmail.com> (cherry picked from commit 373c1c9b691fd4c6831b3a114a006b639304c2af) Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@gmail.com>
-rw-r--r--libavformat/wtvdec.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/libavformat/wtvdec.c b/libavformat/wtvdec.c
index 7300b9fd42..77737fa9e7 100644
--- a/libavformat/wtvdec.c
+++ b/libavformat/wtvdec.c
@@ -993,8 +993,10 @@ static int read_header(AVFormatContext *s)
}
ret = parse_chunks(s, SEEK_TO_DATA, 0, 0);
- if (ret < 0)
+ if (ret < 0) {
+ wtvfile_close(wtv->pb);
return ret;
+ }
avio_seek(wtv->pb, -32, SEEK_CUR);
timeline_pos = avio_tell(s->pb); // save before opening another file