Commit 8d1f7dbb authored by gpoirier's avatar gpoirier

protect the size=seek(SEEK_END,-1)+1 results with an if (.. < 0), else the

return value may still end up being zero (if the seek returns -1, which is
e.g. what file.c will return on error), which is a valid (but incorrect)
filesize.
Patch by Ronald S. Bultje % rbultje A ronald P bitfreak P net %
Original thread:
date: Jan 2, 2007 2:11 AM
subject: [Ffmpeg-devel] Re: [PATCH] file length handling


git-svn-id: file:///var/local/repositories/ffmpeg/trunk@7765 9553f0bf-9b14-0410-a0b8-cfaf0461ba5b
parent e899505f
......@@ -154,7 +154,9 @@ offset_t url_filesize(URLContext *h)
size= url_seek(h, 0, AVSEEK_SIZE);
if(size<0){
pos = url_seek(h, 0, SEEK_CUR);
size = url_seek(h, -1, SEEK_END)+1;
if ((size = url_seek(h, -1, SEEK_END)) < 0)
return size;
size++;
url_seek(h, pos, SEEK_SET);
}
return size;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment