Loading...
common/MetadataVisitor.cpp dyld-1235.2 dyld-1335
--- dyld/dyld-1235.2/common/MetadataVisitor.cpp
+++ dyld/dyld-1335/common/MetadataVisitor.cpp
@@ -47,6 +47,8 @@
 typedef cache_builder::Fixup::Cache64 Cache64;
 #endif
 
+using mach_o::Header;
+
 //
 // MARK: --- ResolvedValue methods ---
 //
@@ -108,7 +110,7 @@
 
 Visitor::Visitor(const DyldSharedCache* dyldCache, const dyld3::MachOAnalyzer* dylibMA,
                  std::optional<VMAddress> selectorStringsBaseAddress)
-    : dylibMA(dylibMA), dylibBaseAddress(dylibMA->preferredLoadAddress()),
+    : dylibMA(dylibMA), dylibBaseAddress(((const Header*)dylibMA)->preferredLoadAddress()),
       selectorStringsBaseAddress(selectorStringsBaseAddress)
 {
     pointerSize = dylibMA->pointerSize();
@@ -151,7 +153,7 @@
 #elif SUPPORT_VM_LAYOUT
 
 Visitor::Visitor(const dyld3::MachOAnalyzer* dylibMA)
-    : dylibMA(dylibMA), dylibBaseAddress(dylibMA->preferredLoadAddress())
+    : dylibMA(dylibMA), dylibBaseAddress(((const Header*)dylibMA)->preferredLoadAddress())
 {
     pointerSize = dylibMA->pointerSize();
 }
@@ -211,6 +213,12 @@
 {
     return this->dylibMF;
 }
+
+const Header* Visitor::hdr() const
+{
+    return (const Header*)this->dylibMF;
+}
+
 
 bool Visitor::isOnDiskBinary() const
 {