Module: libav Branch: master Commit: 8e9c39e81fe5ba34010a7ba05cbe4ae31f177d89
Author: Andreas Cadhalpun <[email protected]> Committer: Luca Barbato <[email protected]> Date: Tue May 26 14:24:35 2015 +0100 mov: abort on EOF in ff_mov_read_chan Otherwise the loop can take a lot of time if num_descr is very large. Signed-off-by: Andreas Cadhalpun <[email protected]> Signed-off-by: Luca Barbato <[email protected]> --- libavformat/mov_chan.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/libavformat/mov_chan.c b/libavformat/mov_chan.c index 2c54920..94b93cf 100644 --- a/libavformat/mov_chan.c +++ b/libavformat/mov_chan.c @@ -565,6 +565,11 @@ int ff_mov_read_chan(AVFormatContext *s, AVIOContext *pb, AVStream *st, label_mask = 0; for (i = 0; i < num_descr; i++) { uint32_t label; + if (pb->eof_reached) { + av_log(s, AV_LOG_ERROR, + "reached EOF while reading channel layout\n"); + return AVERROR_INVALIDDATA; + } label = avio_rb32(pb); // mChannelLabel avio_rb32(pb); // mChannelFlags avio_rl32(pb); // mCoordinates[0] _______________________________________________ libav-commits mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-commits
