diff options
Diffstat (limited to 'lldb/source/Core/Section.cpp')
-rw-r--r-- | lldb/source/Core/Section.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/lldb/source/Core/Section.cpp b/lldb/source/Core/Section.cpp index a86695d46e7..b506879d50a 100644 --- a/lldb/source/Core/Section.cpp +++ b/lldb/source/Core/Section.cpp @@ -641,7 +641,7 @@ SectionList::FindSectionContainingFileAddress (addr_t vm_addr, uint32_t depth) c SectionSP -SectionList::FindSectionContainingLinkedFileAddress (addr_t vm_addr) const +SectionList::FindSectionContainingLinkedFileAddress (addr_t vm_addr, uint32_t depth) const { SectionSP sect_sp; const_iterator sect_iter; @@ -652,7 +652,10 @@ SectionList::FindSectionContainingLinkedFileAddress (addr_t vm_addr) const if (sect->ContainsLinkedFileAddress (vm_addr)) { sect_sp = *sect_iter; - break; + } + else if (depth > 0) + { + sect_sp = sect->GetChildren().FindSectionContainingLinkedFileAddress (vm_addr, depth - 1); } } return sect_sp; |