[FFmpeg-cvslog] wtvenc: test avio_size() validity
Peter Ross
git at videolan.org
Mon Dec 23 14:23:24 CET 2013
ffmpeg | branch: master | Peter Ross <pross at xvid.org> | Mon Dec 23 21:04:45 2013 +1100| [d08ea75a825a8091e995a8e0d7c415ccc4339ec9] | committer: Michael Niedermayer
wtvenc: test avio_size() validity
Signed-off-by: Michael Niedermayer <michaelni at gmx.at>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=d08ea75a825a8091e995a8e0d7c415ccc4339ec9
---
libavformat/wtvdec.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/libavformat/wtvdec.c b/libavformat/wtvdec.c
index 48f51ad..ce76754 100644
--- a/libavformat/wtvdec.c
+++ b/libavformat/wtvdec.c
@@ -153,6 +153,7 @@ static AVIOContext * wtvfile_open_sector(int first_sector, uint64_t length, int
AVIOContext *pb;
WtvFile *wf;
uint8_t *buffer;
+ int64_t size;
if (seek_by_sector(s->pb, first_sector, 0) < 0)
return NULL;
@@ -205,7 +206,8 @@ static AVIOContext * wtvfile_open_sector(int first_sector, uint64_t length, int
return NULL;
}
- if ((int64_t)wf->sectors[wf->nb_sectors - 1] << WTV_SECTOR_BITS > avio_size(s->pb))
+ size = avio_size(s->pb);
+ if (size >= 0 && (int64_t)wf->sectors[wf->nb_sectors - 1] << WTV_SECTOR_BITS > size)
av_log(s, AV_LOG_WARNING, "truncated file\n");
/* check length */
More information about the ffmpeg-cvslog
mailing list