]> git.sesse.net Git - vlc/commitdiff
mmap: Only use MAP_NOCACHE on platforms that support it.
authorDerk-Jan Hartman <hartman@videolan.org>
Fri, 10 Oct 2008 12:15:37 +0000 (14:15 +0200)
committerDerk-Jan Hartman <hartman@videolan.org>
Fri, 10 Oct 2008 12:15:37 +0000 (14:15 +0200)
That would be Darwin and some BSDs apparently

modules/access/mmap.c

index a5aefd451aa23479d0c7935232b9baac0242cf61..bce52f531474c81d47ee9d15b895abb8585d005a 100644 (file)
@@ -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