summaryrefslogtreecommitdiff
path: root/libavformat/mov.c
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2015-07-14 14:14:16 +0200
committerMichael Niedermayer <michael@niedermayer.cc>2015-07-28 02:42:16 +0200
commit3953c497e2751bbbfd5063e4b7b54c868f46e031 (patch)
tree1f9d4814a3b55a9b26b6f6a5fdaf141e0013932f /libavformat/mov.c
parent40f5222e9c17b0ae759e38e2ba783017f183729b (diff)
downloadffmpeg-3953c497e2751bbbfd5063e4b7b54c868f46e031.tar.gz
avformat/mov: Fix deallocation when MOVStreamContext failed to allocate
Fixes: 260813283176b57b3c9974fe284eebc3_signal_sigsegv_7ffff713351a_991_xtrem_e2_m64q15_a32sxx.3gp with memlimit of 262144 Found-by: Samuel Groß, Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc> (cherry picked from commit 15629129dde771446a005282ee33c4ea1199e696) Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
Diffstat (limited to 'libavformat/mov.c')
-rw-r--r--libavformat/mov.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavformat/mov.c b/libavformat/mov.c
index 783ad0d76d..137bc6006b 100644
--- a/libavformat/mov.c
+++ b/libavformat/mov.c
@@ -3717,6 +3717,9 @@ static int mov_read_close(AVFormatContext *s)
AVStream *st = s->streams[i];
MOVStreamContext *sc = st->priv_data;
+ if (!sc)
+ continue;
+
av_freep(&sc->ctts_data);
for (j = 0; j < sc->drefs_count; j++) {
av_freep(&sc->drefs[j].path);