We’re getting a lot of random crashes when interacting with our UI. The stack-trace isn’t very helpful via Xcode - the only indication is that it is crashing in objc_retain. The crash occurs on both device and simulator, and our current setup is Xcode 15.1 beta 3, Polyspatial 0.6.2 and Unity 2022.3.13. Though the situation has been present through prior combinations of the above for a few versions of each now.
Our UI setup is complex, as it is a port of an existing iOS Game, but essentially we have UI screens (Canvases) loaded additively via scenes, and I’m bumping each Scene’s canvas to World Space when they are created.
Input is handled manually via the Enhanced Touch API, because canvas input via the InputSystemUIInputModule doesn’t work (I’ll make another thread about this).
When we unload a scene containing a canvas, it will sometimes (a lot of the time) crash in objc_retain. What I’ve noticed is that adding ColliderTracker to the list of disabled runtime trackers makes the issue go away. That’s not great however as we need to use the collider tracker to handle other input elsewhere.
I’ve tried to create a reproducible sample with no luck. I imagine there’s some issue whereby objects are being released twice, leading to the crash?
Has anyone else seen this issue? Is there something I can try to get around this? I’ve tried limiting tracked colliders via the ColliderLayerMask with no luck, and I’ve made sure to ensure all of our canvas hierarchies are using the same Layer tag (UI) for the full depth of the tree.
Thanks,
Joe