summaryrefslogtreecommitdiffstats
path: root/llvm/unittests/DebugInfo/PDB/MappedBlockStreamTest.cpp
diff options
context:
space:
mode:
authorZachary Turner <zturner@google.com>2017-02-28 17:49:34 +0000
committerZachary Turner <zturner@google.com>2017-02-28 17:49:34 +0000
commitd0b44fa788d1d6b66ef03130e24c536113c3ab97 (patch)
tree0aa1cc8c068b60f27534d428da1404eb2b949bca /llvm/unittests/DebugInfo/PDB/MappedBlockStreamTest.cpp
parent159f3bb80e8e85bed3426cf015c765a842383322 (diff)
downloadbcm5719-llvm-d0b44fa788d1d6b66ef03130e24c536113c3ab97.tar.gz
bcm5719-llvm-d0b44fa788d1d6b66ef03130e24c536113c3ab97.zip
[PDB] Add BinaryStreamError.
This migrates the stream code away from MSFError to using its own custom Error class. llvm-svn: 296494
Diffstat (limited to 'llvm/unittests/DebugInfo/PDB/MappedBlockStreamTest.cpp')
-rw-r--r--llvm/unittests/DebugInfo/PDB/MappedBlockStreamTest.cpp12
1 files changed, 6 insertions, 6 deletions
diff --git a/llvm/unittests/DebugInfo/PDB/MappedBlockStreamTest.cpp b/llvm/unittests/DebugInfo/PDB/MappedBlockStreamTest.cpp
index 42f38a2e2e4..abeb4211165 100644
--- a/llvm/unittests/DebugInfo/PDB/MappedBlockStreamTest.cpp
+++ b/llvm/unittests/DebugInfo/PDB/MappedBlockStreamTest.cpp
@@ -42,16 +42,16 @@ public:
Error readBytes(uint32_t Offset, uint32_t Size,
ArrayRef<uint8_t> &Buffer) override {
- if (Offset + Size > Data.size())
- return make_error<MSFError>(msf_error_code::insufficient_buffer);
+ if (auto EC = checkOffset(Offset, Size))
+ return EC;
Buffer = Data.slice(Offset, Size);
return Error::success();
}
Error readLongestContiguousChunk(uint32_t Offset,
ArrayRef<uint8_t> &Buffer) override {
- if (Offset >= Data.size())
- return make_error<MSFError>(msf_error_code::insufficient_buffer);
+ if (auto EC = checkOffset(Offset, 1))
+ return EC;
Buffer = Data.drop_front(Offset);
return Error::success();
}
@@ -59,8 +59,8 @@ public:
uint32_t getLength() override { return Data.size(); }
Error writeBytes(uint32_t Offset, ArrayRef<uint8_t> SrcData) override {
- if (Offset + SrcData.size() > Data.size())
- return make_error<MSFError>(msf_error_code::insufficient_buffer);
+ if (auto EC = checkOffset(Offset, SrcData.size()))
+ return EC;
::memcpy(&Data[Offset], SrcData.data(), SrcData.size());
return Error::success();
}
OpenPOWER on IntegriCloud