tools: fix heap-buffer-overrun detected via ASAN

Once the auxiliary fields relating to the filename have been inspected, any
following auxiliary fields need not be visited as they have been consumed (the
following fields comprise the filepath as a single unit).

Adjust the test to catch this even if ASAN is not enabled.

llvm-svn: 206190
This commit is contained in:
Saleem Abdulrasool 2014-04-14 16:38:25 +00:00
parent 5698dfd860
commit 27e18491ee
2 changed files with 4 additions and 0 deletions

View File

@ -2,4 +2,5 @@ RUN: llvm-objdump -t %p/Inputs/file.obj.coff-arm | FileCheck %s
CHECK: .file
CHECK-NEXT: AUX /Users/compnerd/work/llvm/test/tools/llvm-readobj/Inputs/file.asm
CHECK-NEXT: [{{[ 0-9]+}}]

View File

@ -708,6 +708,9 @@ static void PrintCOFFSymbolTable(const COFFObjectFile *coff) {
StringRef Name(AF->FileName,
Symbol->NumberOfAuxSymbols * COFF::SymbolSize);
outs() << "AUX " << Name.rtrim(StringRef("\0", 1)) << '\n';
SI = SI + Symbol->NumberOfAuxSymbols;
break;
} else {
outs() << "AUX Unknown\n";
}