From 8a00fb5b8c1b9c82db5528b288859227a7e35868 Mon Sep 17 00:00:00 2001 From: Xusheng Date: Fri, 8 Nov 2024 13:29:00 +0800 Subject: Bulk add segments in the binary view to improve performance --- view/macho/machoview.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'view/macho/machoview.cpp') diff --git a/view/macho/machoview.cpp b/view/macho/machoview.cpp index 5a118256..d26769e1 100644 --- a/view/macho/machoview.cpp +++ b/view/macho/machoview.cpp @@ -1593,6 +1593,7 @@ bool MachoView::InitializeHeader(MachOHeader& header, bool isMainHeader, uint64_ if (!(m_header.ident.filetype == MH_FILESET && isMainHeader)) \ { + BeginBulkAddSegments(); for (auto &segment: header.segments) { if ((segment.initprot == MACHO_VM_PROT_NONE) || (!segment.vmsize)) continue; @@ -1619,6 +1620,8 @@ bool MachoView::InitializeHeader(MachOHeader& header, bool isMainHeader, uint64_ AddAutoSegment(segment.vmaddr, segment.vmsize, segment.fileoff, segment.filesize, flags); } + EndBulkAddSegments(); + for (auto& section : header.sections) { char sectionName[17]; -- cgit v1.3.1