Follow

Can someone explain me why it is safe here to access wild memory locations? The object in arg0 has only one ivar and is only 16 bytes, so where are offsets like 0x78 (120 bytes) coming from? Or what am I missing here?

@ffried maybe that ivar is a large structure or a C++ class

@bugaevc Thanks anyways! You're not wrong about C++, though. The object has one class as ivar. Said class is again 16 bytes and has again one ivar which is a struct with 16 fields. This struct has a size of 104 bytes.
Thinking about this now, 16 + 16 + 104 = 136 which in total is less than the largest offset 0x80 (120). So this might as well just directly reference fields in this struct... 🤔

@bugaevc Now I just need to figure out which fields are accessed here and I just might finally be able to solve my problem. 😃

Sign in to participate in the conversation
Mastodon for Tech Folks

This Mastodon instance is for people interested in technology. Discussions aren't limited to technology, because tech folks shouldn't be limited to technology either!