wvdec: check for eof in wv_read_block_header()
authorPaul B Mahol <onemda@gmail.com>
Mon, 18 Aug 2014 11:00:24 +0000 (11:00 +0000)
committerPaul B Mahol <onemda@gmail.com>
Mon, 18 Aug 2014 11:30:35 +0000 (11:30 +0000)
Fixes Ticket #3865
Found-by: Piotr Bandurski <ami_stuff@o2.pl>
Signed-off-by: Paul B Mahol <onemda@gmail.com>
libavformat/wvdec.c

index 5a8d9c7..76768cd 100644 (file)
@@ -124,7 +124,7 @@ static int wv_read_block_header(AVFormatContext *ctx, AVIOContext *pb)
                    "Cannot determine additional parameters\n");
             return AVERROR_INVALIDDATA;
         }
-        while (avio_tell(pb) < block_end) {
+        while (avio_tell(pb) < block_end && !avio_feof(pb)) {
             int id, size;
             id   = avio_r8(pb);
             size = (id & 0x80) ? avio_rl24(pb) : avio_r8(pb);