Skip to content

Commit f2cde65

Browse files
committed
Added no export trie data detection.
1 parent 155eb8b commit f2cde65

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

view/macho/machoview.cpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -696,14 +696,18 @@ MachOHeader MachoView::HeaderForAddress(BinaryView* data, uint64_t address, bool
696696
header.dyldInfo.export_size = reader.Read32();
697697
header.exportTrie.dataoff = header.dyldInfo.export_off;
698698
header.exportTrie.datasize = header.dyldInfo.export_size;
699-
header.exportTriePresent = true;
699+
// Only mark export trie as present if there's actually data
700+
if (header.dyldInfo.export_off != 0 && header.dyldInfo.export_size != 0)
701+
header.exportTriePresent = true;
700702
header.dyldInfoPresent = true;
701703
break;
702704
case LC_DYLD_EXPORTS_TRIE:
703705
m_logger->LogDebug("LC_DYLD_EXPORTS_TRIE\n");
704706
header.exportTrie.dataoff = reader.Read32();
705707
header.exportTrie.datasize = reader.Read32();
706-
header.exportTriePresent = true;
708+
// Only mark export trie as present if there's actually data
709+
if (header.exportTrie.dataoff != 0 && header.exportTrie.datasize != 0)
710+
header.exportTriePresent = true;
707711
break;
708712
case LC_THREAD:
709713
case LC_UNIXTHREAD:

0 commit comments

Comments
 (0)