diff options
author | Avuton Olrich <avuton@gmail.com> | 2007-01-19 01:40:02 +0000 |
---|---|---|
committer | Avuton Olrich <avuton@gmail.com> | 2007-01-19 01:40:02 +0000 |
commit | 51d7ab021c97993c62186257fc71ad4617b2ebea (patch) | |
tree | 48818c1f02543a6da93b6e43954a05ac2717cde0 /src/inputStream_file.c | |
parent | 9a222cab6c9d0892cf7b28deffd0eb465cd0829b (diff) | |
download | mpd-51d7ab021c97993c62186257fc71ad4617b2ebea.tar.gz mpd-51d7ab021c97993c62186257fc71ad4617b2ebea.tar.xz mpd-51d7ab021c97993c62186257fc71ad4617b2ebea.zip |
Committing posix_fadvise(); normalperson/jat reviewed. Appears fine. Fixes bug #1428.
git-svn-id: https://svn.musicpd.org/mpd/trunk@5265 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to 'src/inputStream_file.c')
-rw-r--r-- | src/inputStream_file.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/inputStream_file.c b/src/inputStream_file.c index f4acd3a91..de1055eb2 100644 --- a/src/inputStream_file.c +++ b/src/inputStream_file.c @@ -25,6 +25,8 @@ #include <sys/types.h> #include <unistd.h> #include <errno.h> +#define _XOPEN_SOURCE 600 +#include <fcntl.h> void inputStream_initFile(void) { @@ -46,6 +48,10 @@ int inputStream_fileOpen(InputStream * inStream, char *filename) inStream->size = ftell(fp); fseek(fp, 0, SEEK_SET); +#ifdef POSIX_FADV_SEQUENTIAL + posix_fadvise(fileno(fp), (off_t)0, inStream->size, POSIX_FADV_SEQUENTIAL); +#endif + inStream->data = fp; inStream->seekFunc = inputStream_fileSeek; inStream->closeFunc = inputStream_fileClose; |