summaryrefslogtreecommitdiffstats
path: root/third_party/jpeg-xl/lib/extras/mmap.cc
diff options
context:
space:
mode:
Diffstat (limited to 'third_party/jpeg-xl/lib/extras/mmap.cc')
-rw-r--r--third_party/jpeg-xl/lib/extras/mmap.cc7
1 files changed, 5 insertions, 2 deletions
diff --git a/third_party/jpeg-xl/lib/extras/mmap.cc b/third_party/jpeg-xl/lib/extras/mmap.cc
index 7852831ebd..9f5bba97ed 100644
--- a/third_party/jpeg-xl/lib/extras/mmap.cc
+++ b/third_party/jpeg-xl/lib/extras/mmap.cc
@@ -10,7 +10,8 @@
#include "lib/jxl/base/common.h"
-#if __unix__
+#if defined(__unix__) || defined(__unix) || \
+ defined(__APPLE__) && defined(__MACH__)
#include <fcntl.h>
#include <sys/mman.h>
#include <unistd.h>
@@ -54,7 +55,7 @@ struct MemoryMappedFileImpl {
} // namespace jxl
-#elif __WIN32__
+#elif defined(_WIN32)
#include <string.h>
#include <windows.h>
@@ -97,6 +98,8 @@ struct MemoryMappedFileImpl {
return f;
}
+ ~MemoryMappedFileImpl() { UnmapViewOfFile(ptr); }
+
const uint8_t* data() const { return reinterpret_cast<const uint8_t*>(ptr); }
size_t size() const { return fsize.QuadPart; }