summaryrefslogtreecommitdiffstats
path: root/libavformat/avidec.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2016-09-25 11:56:11 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2016-09-25 19:06:51 +0200
commitb98dafe04564d5fe3e5bf5073d871dd93a4a62de (patch)
tree8f7b90f3c69df2cbfee735490be2cc82caedd729 /libavformat/avidec.c
parent9083e044f11b6f04cdc15d445872513b72d0e557 (diff)
downloadffmpeg-streaming-b98dafe04564d5fe3e5bf5073d871dd93a4a62de.zip
ffmpeg-streaming-b98dafe04564d5fe3e5bf5073d871dd93a4a62de.tar.gz
avformat/avidec: Fix memleak with dv in avi
Found-by: 连一汉 <lianyihan@360.cn> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat/avidec.c')
-rw-r--r--libavformat/avidec.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/libavformat/avidec.c b/libavformat/avidec.c
index 858011c..26b0234 100644
--- a/libavformat/avidec.c
+++ b/libavformat/avidec.c
@@ -605,9 +605,13 @@ static int avi_read_header(AVFormatContext *s)
ast = s->streams[0]->priv_data;
av_freep(&s->streams[0]->codecpar->extradata);
av_freep(&s->streams[0]->codecpar);
+ av_freep(&s->streams[0]->codec);
if (s->streams[0]->info)
av_freep(&s->streams[0]->info->duration_error);
av_freep(&s->streams[0]->info);
+ if (s->streams[0]->internal)
+ av_freep(&s->streams[0]->internal->avctx);
+ av_freep(&s->streams[0]->internal);
av_freep(&s->streams[0]);
s->nb_streams = 0;
if (CONFIG_DV_DEMUXER) {
OpenPOWER on IntegriCloud