diff options
author | Zachary Turner <zturner@google.com> | 2016-06-09 00:21:37 +0000 |
---|---|---|
committer | Zachary Turner <zturner@google.com> | 2016-06-09 00:21:37 +0000 |
commit | 36eb047792aaa77a11d710e1ee4f2e9930464925 (patch) | |
tree | 075a3c8ce452cd7d96e94242f0561479626a1279 | |
parent | c41cd6dcf7a01fdeb0a7a1bce74baffc3a813b73 (diff) | |
download | llvm-36eb047792aaa77a11d710e1ee4f2e9930464925.zip llvm-36eb047792aaa77a11d710e1ee4f2e9930464925.tar.gz llvm-36eb047792aaa77a11d710e1ee4f2e9930464925.tar.bz2 |
[pdbdump-fuzzer] Try to fix build errors in fuzzer.
llvm-svn: 272230
-rw-r--r-- | llvm/tools/llvm-pdbdump/fuzzer/llvm-pdbdump-fuzzer.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/llvm/tools/llvm-pdbdump/fuzzer/llvm-pdbdump-fuzzer.cpp b/llvm/tools/llvm-pdbdump/fuzzer/llvm-pdbdump-fuzzer.cpp index a0e1436..988f47d 100644 --- a/llvm/tools/llvm-pdbdump/fuzzer/llvm-pdbdump-fuzzer.cpp +++ b/llvm/tools/llvm-pdbdump/fuzzer/llvm-pdbdump-fuzzer.cpp @@ -15,6 +15,8 @@ #include "llvm/DebugInfo/CodeView/SymbolDumper.h" #include "llvm/DebugInfo/CodeView/TypeDumper.h" #include "llvm/DebugInfo/PDB/Raw/DbiStream.h" +#include "llvm/DebugInfo/PDB/Raw/IPDBStreamData.h" +#include "llvm/DebugInfo/PDB/Raw/MappedBlockStream.h" #include "llvm/DebugInfo/PDB/Raw/ModStream.h" #include "llvm/DebugInfo/PDB/Raw/PDBFile.h" #include "llvm/DebugInfo/PDB/Raw/RawSession.h" @@ -63,7 +65,13 @@ extern "C" int LLVMFuzzerTestOneInput(uint8_t *data, size_t size) { pdb::DbiStream &DS = DbiS.get(); for (auto &Modi : DS.modules()) { - pdb::ModStream ModS(*File, Modi.Info); + auto ModStreamData = pdb::MappedBlockStream::createIndexedStream( + Modi.Info.getModuleStreamIndex(), *File); + if (!ModStreamData) { + consumeError(ModStreamData.takeError()); + return 0; + } + pdb::ModStream ModS(Modi.Info, std::move(*ModStreamData)); if (auto E = ModS.reload()) { consumeError(std::move(E)); return 0; |