forked from OSchip/llvm-project
96a01fa046
If a header map file is corrupt, the strings in the string table may not be null-terminated. The logic here previously relied on `MemoryBuffer` always being null-terminated, but this isn't actually guaranteed by the class AFAICT. Moreover, we're seeing a lot of crash traces at calls to `strlen()` inside of `lookupFilename()`, so something is going wrong there. Instead, use `strnlen()` to get the length, and check for corruption. Also remove code paths that could call `StringRef(nullptr)`. r261459 made these rather obvious (although they'd been there all along). llvm-svn: 261461 |
||
---|---|---|
.. | ||
AST | ||
ASTMatchers | ||
Basic | ||
CodeGen | ||
Driver | ||
Format | ||
Frontend | ||
Lex | ||
Rewrite | ||
Sema | ||
StaticAnalyzer | ||
Tooling | ||
libclang | ||
CMakeLists.txt |