From: Derk-Jan Hartman Date: Fri, 10 Oct 2008 12:15:37 +0000 (+0200) Subject: mmap: Only use MAP_NOCACHE on platforms that support it. X-Git-Tag: 1.0.0-pre1~2595 X-Git-Url: https://git.sesse.net/?a=commitdiff_plain;h=8dcf947d585d89db6e6b879cc4699d7ca60bb5e4;p=vlc mmap: Only use MAP_NOCACHE on platforms that support it. That would be Darwin and some BSDs apparently --- diff --git a/modules/access/mmap.c b/modules/access/mmap.c index a5aefd451a..bce52f5314 100644 --- a/modules/access/mmap.c +++ b/modules/access/mmap.c @@ -136,7 +136,12 @@ static int Open (vlc_object_t *p_this) /* Autodetect mmap() support */ if (st.st_size > 0) { - void *addr = mmap (NULL, 1, PROT_READ|PROT_WRITE, MAP_PRIVATE | MAP_NOCACHE, fd, 0); + int flags = MAP_PRIVATE; +#if defined(MAP_NOCACHE) + flags |= MAP_NOCACHE; +#endif + + void *addr = mmap (NULL, 1, PROT_READ|PROT_WRITE, flags, fd, 0); if (addr != MAP_FAILED) munmap (addr, 1); else