summaryrefslogtreecommitdiff
path: root/lib/Support/MemoryBuffer.cpp
diff options
context:
space:
mode:
authorAlp Toker <alp@nuanti.com>2014-05-09 08:57:32 +0000
committerAlp Toker <alp@nuanti.com>2014-05-09 08:57:32 +0000
commit8d24d43c95eda711f1491dfd2eda91911ab91f04 (patch)
tree18f803c16385fba070b36170cacc71a5dc37a153 /lib/Support/MemoryBuffer.cpp
parent87ccb2bffd2652ce8be49be0c455c0d4740aa763 (diff)
downloadllvm-8d24d43c95eda711f1491dfd2eda91911ab91f04.tar.gz
llvm-8d24d43c95eda711f1491dfd2eda91911ab91f04.tar.bz2
llvm-8d24d43c95eda711f1491dfd2eda91911ab91f04.tar.xz
MemoryBuffer: don't force mmap when stat fails
Fix error handling introduced in r127426 that could result in MemoryBuffers not having null termination. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@208396 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Support/MemoryBuffer.cpp')
-rw-r--r--lib/Support/MemoryBuffer.cpp5
1 files changed, 2 insertions, 3 deletions
diff --git a/lib/Support/MemoryBuffer.cpp b/lib/Support/MemoryBuffer.cpp
index f95383dfb2..26c3a2ebd2 100644
--- a/lib/Support/MemoryBuffer.cpp
+++ b/lib/Support/MemoryBuffer.cpp
@@ -320,9 +320,8 @@ static bool shouldUseMmap(int FD,
// RequiresNullTerminator = false and MapSize != -1.
if (FileSize == size_t(-1)) {
sys::fs::file_status Status;
- error_code EC = sys::fs::status(FD, Status);
- if (EC)
- return EC;
+ if (sys::fs::status(FD, Status))
+ return false;
FileSize = Status.getSize();
}