Mercurial > audlegacy
diff src/audacious/vfs_buffered_file.c @ 2371:3b8b7d4dc10b trunk
[svn] - possible fix for VFSBufferedFile crash
author | nenolod |
---|---|
date | Sat, 20 Jan 2007 03:07:30 -0800 |
parents | 02a850a2533b |
children | d68e6f302855 |
line wrap: on
line diff
--- a/src/audacious/vfs_buffered_file.c Fri Jan 19 21:26:43 2007 -0800 +++ b/src/audacious/vfs_buffered_file.c Sat Jan 20 03:07:30 2007 -0800 @@ -74,6 +74,13 @@ { VFSBufferedFile *handle = (VFSBufferedFile *) stream->handle; + /* is this request within the buffered area, or should we switch to + * an FD? --nenolod + */ + if ((vfs_ftell(handle->buffer)) + (size * nmemb) >= + ((VFSBuffer *) handle->buffer->handle)->size) + handle->which = TRUE; + return vfs_getc(handle->which == TRUE ? handle->fd : handle->buffer); }