summaryrefslogtreecommitdiff
path: root/objectivec
diff options
context:
space:
mode:
Diffstat (limited to 'objectivec')
-rw-r--r--objectivec/objc.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/objectivec/objc.cpp b/objectivec/objc.cpp
index 4c574600..e4b21ff6 100644
--- a/objectivec/objc.cpp
+++ b/objectivec/objc.cpp
@@ -838,9 +838,14 @@ void ObjCProcessor::LoadProtocols(ObjCReader* reader, Ref<Section> listSection)
void ObjCProcessor::GetRelativeMethod(ObjCReader* reader, method_t& meth)
{
- meth.name = reader->GetOffset() + reader->ReadS32();
- meth.types = reader->GetOffset() + reader->ReadS32();
- meth.imp = reader->GetOffset() + reader->ReadS32();
+ uint64_t offset = reader->GetOffset();
+ meth.name = offset + reader->ReadS32();
+
+ offset += sizeof(int32_t);
+ meth.types = offset + reader->ReadS32();
+
+ offset += sizeof(int32_t);
+ meth.imp = offset + reader->ReadS32();
}
void ObjCProcessor::ReadListOfMethodLists(ObjCReader* reader, ClassBase& cls, std::string_view name, view_ptr_t start)