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-03 15:49:18 +0200
commit78bf4ac7789bf7bda1338157eefddfcb2a8cab70 (patch)
tree51e3d2a6c404ce6f1a0a528d7b2ca0fd01c10efb
parentbaf9d51b8b1855d3606578fcd7aac0976bc6b221 (diff)
downloadffmpeg-78bf4ac7789bf7bda1338157eefddfcb2a8cab70.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 0dd56f3692..6317a0b131 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