summaryrefslogtreecommitdiff
path: root/source/utilities/MemMappedFile.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'source/utilities/MemMappedFile.cpp')
-rw-r--r--source/utilities/MemMappedFile.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/source/utilities/MemMappedFile.cpp b/source/utilities/MemMappedFile.cpp
index 287c5b9..8d5905d 100644
--- a/source/utilities/MemMappedFile.cpp
+++ b/source/utilities/MemMappedFile.cpp
@@ -71,7 +71,10 @@ int MemMappedFile::LoadFileData(const char *path)
return FILE_OPENING_ERROR;
}
- size_ = ::GetFileSize(handle_, NULL);
+ uint64 SizeHigh = 0;
+
+ size_ = ::GetFileSize(handle_, (LPDWORD)&SizeHigh);
+ size_ = (SizeHigh << 32) | size_;
if (0 == size_) {
return 0;
@@ -113,8 +116,9 @@ int MemMappedFile::LoadFileData(const char *path)
size_ = fileStat.st_size;
- mappedData_ = static_cast<uint8 *>(mmap(0, size_, PROT_READ, MAP_PRIVATE | MAP_POPULATE, descriptor_, 0));
-
+ /* alway return MAP_FAILED to prevent memory consumption */
+ mappedData_ = (uint8 *)MAP_FAILED; //static_cast<uint8 *>(mmap(0, size_, PROT_READ, MAP_PRIVATE /*| MAP_POPULATE*/, descriptor_, 0));
+
if (MAP_FAILED != mappedData_) {
isMapped_ = true;
} else {