diff --git a/lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp b/lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp index 90084fd190d4d..946f8def7c159 100644 --- a/lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp +++ b/lldb/source/Plugins/Process/mach-core/ProcessMachCore.cpp @@ -287,7 +287,7 @@ Status ProcessMachCore::DoLoadCore() { addr_t vm_addr = 0; for (uint32_t i = 0; i < num_sections; ++i) { Section *section = section_list->GetSectionAtIndex(i).get(); - if (section) { + if (section && section->GetFileSize() > 0) { lldb::addr_t section_vm_addr = section->GetFileAddress(); FileRange file_range(section->GetFileOffset(), section->GetFileSize()); VMRangeToFileOffset::Entry range_entry( @@ -297,20 +297,12 @@ Status ProcessMachCore::DoLoadCore() { ranges_are_sorted = false; vm_addr = section->GetFileAddress(); VMRangeToFileOffset::Entry *last_entry = m_core_aranges.Back(); - // printf ("LC_SEGMENT[%u] arange=[0x%16.16" PRIx64 " - - // 0x%16.16" PRIx64 "), frange=[0x%8.8x - 0x%8.8x)\n", - // i, - // range_entry.GetRangeBase(), - // range_entry.GetRangeEnd(), - // range_entry.data.GetRangeBase(), - // range_entry.data.GetRangeEnd()); if (last_entry && last_entry->GetRangeEnd() == range_entry.GetRangeBase() && last_entry->data.GetRangeEnd() == range_entry.data.GetRangeBase()) { last_entry->SetRangeEnd(range_entry.GetRangeEnd()); last_entry->data.SetRangeEnd(range_entry.data.GetRangeEnd()); - // puts("combine"); } else { m_core_aranges.Append(range_entry); }