aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2012-05-29 19:50:15 +0200
committerMichael Niedermayer <michaelni@gmx.at>2012-06-09 21:06:57 +0200
commitb3e5c8de6a46dd5acb510147df22818d8a971607 (patch)
tree91ec30fc07d3ef1c7f7de18549e4b5e9523aa51b
parentee6c1670df0bc230e99c3b68f66807af4ebf5e69 (diff)
downloadffmpeg-b3e5c8de6a46dd5acb510147df22818d8a971607.tar.gz
ape: Fix null ptr dereference with files missing a seekatable.
Such files are currently not supported as the table is used at several points Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit e7cb161515fc9fb6d30d1681d64d9ba7ad737a4e) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavformat/ape.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/libavformat/ape.c b/libavformat/ape.c
index b0f2394ad8..7e18a403c3 100644
--- a/libavformat/ape.c
+++ b/libavformat/ape.c
@@ -274,6 +274,9 @@ static int ape_read_header(AVFormatContext * s, AVFormatParameters * ap)
return AVERROR(ENOMEM);
for (i = 0; i < ape->seektablelength / sizeof(uint32_t); i++)
ape->seektable[i] = avio_rl32(pb);
+ }else{
+ av_log(s, AV_LOG_ERROR, "Missing seektable\n");
+ return -1;
}
ape->frames[0].pos = ape->firstframe;