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.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206190 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
Saleem Abdulrasool 2014-04-14 16:38:25 +00:00
parent 6ede5d24b8
commit adc90c9d6d
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";
}