summaryrefslogtreecommitdiffstats
path: root/lldb/source/Host/common/FileSpec.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'lldb/source/Host/common/FileSpec.cpp')
-rw-r--r--lldb/source/Host/common/FileSpec.cpp3
1 files changed, 2 insertions, 1 deletions
diff --git a/lldb/source/Host/common/FileSpec.cpp b/lldb/source/Host/common/FileSpec.cpp
index beeb63da6b0..5edec81a7d9 100644
--- a/lldb/source/Host/common/FileSpec.cpp
+++ b/lldb/source/Host/common/FileSpec.cpp
@@ -747,7 +747,8 @@ FileSpec::MemoryMapFileContents(off_t file_offset, size_t file_size) const
std::unique_ptr<DataBufferMemoryMap> mmap_data(new DataBufferMemoryMap());
if (mmap_data.get())
{
- if (mmap_data->MemoryMapFromFileSpec (this, file_offset, file_size) >= file_size)
+ const size_t mapped_length = mmap_data->MemoryMapFromFileSpec (this, file_offset, file_size);
+ if (((file_size == SIZE_MAX) && (mapped_length > 0)) || (mapped_length >= file_size))
data_sp.reset(mmap_data.release());
}
return data_sp;
OpenPOWER on IntegriCloud