diff options
Diffstat (limited to 'llvm/lib/DebugInfo/PDB/Raw')
| -rw-r--r-- | llvm/lib/DebugInfo/PDB/Raw/RawSession.cpp | 2 | ||||
| -rw-r--r-- | llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp | 2 |
2 files changed, 3 insertions, 1 deletions
diff --git a/llvm/lib/DebugInfo/PDB/Raw/RawSession.cpp b/llvm/lib/DebugInfo/PDB/Raw/RawSession.cpp index 458c17a79a3..455d33140dd 100644 --- a/llvm/lib/DebugInfo/PDB/Raw/RawSession.cpp +++ b/llvm/lib/DebugInfo/PDB/Raw/RawSession.cpp @@ -51,6 +51,8 @@ Error RawSession::createFromPdb(StringRef Path, ErrorOr<std::unique_ptr<MemoryBuffer>> ErrorOrBuffer = MemoryBuffer::getFileOrSTDIN(Path, /*FileSize=*/-1, /*RequiresNullTerminator=*/false); + if (!ErrorOrBuffer) + return llvm::make_error<GenericError>(generic_error_code::invalid_path); std::unique_ptr<MemoryBuffer> Buffer = std::move(*ErrorOrBuffer); auto Stream = llvm::make_unique<InputByteStream>(std::move(Buffer)); diff --git a/llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp b/llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp index 6c5dd93e8ed..7ff1e3dc8ce 100644 --- a/llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp +++ b/llvm/lib/DebugInfo/PDB/Raw/TpiStream.cpp @@ -105,7 +105,7 @@ public: } Error visitClass(ClassRecord &Rec) override { return verify(Rec); } - Error visitEnum(EnumRecord &Rec) override { return verify(Rec); } + Error visitEnum(EnumRecord &Rec) override { return Error::success(); } Error visitUnion(UnionRecord &Rec) override { return verify(Rec); } Error visitTypeBegin(const CVRecord<TypeLeafKind> &Rec) override { |

