<rdar://problem/11078937>

LLDB can match incorrect line table entries when an address is between two valid line entries (in the gap between the valid debug info), now it doesn't!

llvm-svn: 153077
This commit is contained in:
Greg Clayton
2012-03-20 02:15:45 +00:00
parent 9ff1ba2546
commit 5400bad64d

View File

@@ -227,7 +227,9 @@ LineTable::FindLineEntryByAddress (const Address &so_addr, LineEntry& line_entry
}
if (pos != end_pos)
// Make sure we have a valid match and that the match isn't a terminating
// entry for a previous line...
if (pos != end_pos && pos->is_terminal_entry == false)
{
uint32_t match_idx = std::distance (begin_pos, pos);
success = ConvertEntryAtIndexToLineEntry(match_idx, line_entry);