In my application, I do network booting. My data model consists of "Loader" objects that do this loading and call their delegate on completion / failure. All delegates comply with the LoaderDelegate protocol.
The problem I am facing is that sometimes seemingly random objects, rather than a delegate, receive delegate messages. This, of course, causes a crash due to an unrecognized selector.
Only one set of crash logs tells me which of my bootloaders has a problem, others do not have this information, just a random object that received the message.
I am stuck on how to determine the real cause of this problem.
One set of crash logs has a bootloader trying to call it a delegate, but reaching _UIImageViewExtendedStorage
. Another has a bootloader that reaches __NSCFInputStream
. Another __NSBlockVariable__
. And one more, CALayer
.
And this is only in my latest beta from 3 days ago.
It would be one if every time it was the same object, but it seems almost random. Is it possible that the memory is somehow overwritten with a new object?
My delegate property for all my loaders is the assign property, but the delegate is always alive when the loader finishes (delegates are my view controllers calling the loaders).
source share