Tom Lokhorst

@tomlokhorst
329 Followers
121 Following
377 Posts
Indie developer.
Currently working on iPhone mirroring app https://getbezel.app and Vision Pro app https://splitscreen.vision
Fan of both space and time.
Workhttps://nonstrict.eu
Personalhttps://tom.lokhorst.eu
LocationThe Netherlands
WWDC Indexhttps://wwdcindex.com
@mattiem Now it’s public.
I think serial queue has same issue. The concurrent queue was just there because that was in my original code.

@mattiem Not fully. The mutating func is modifying the buffer var in the class simultaneously. But I don't know why this triggers this particular crash, at this location.

It also depends on the OS version, on macOS 26 it's the new xzone malloc, but on macOS 15 it sometimes fails with "Fatal error: UnsafeMutablePointer.initialize overlapping range".

https://github.com/nonstrict-hq/StructQueueCrash

Weird crash in Swift "Object of class _ContiguousArrayStorage deallocated with non-zero retain count 2."
I had some old code which tries to protect its internal state using a DispatchQueue. But it's a struct.
When I access it from multiple threads at the same time via a class, it crashes. In my old Swift 5 code I didn't have the "unchecked Sendable", and I assumed it was correct because of the DispatchQueue.
My actual fix is changing the struct to a final class.
@sjoerd_visscher I was thinking about that. If crappy microphones can pick it up, that would be a good improvement.
Upgraded my audio/video sync timing testing setup. Now it can run autonomously. Although the beeps are getting annoying.
VFX Toolbox macOS App Icon: https://vfxtoolbox.fcp.cafe/
Got some new hardware to test audio/video sync timing.
NASA’s mission to orbit the Moon is being interrupted by Outlook (New) and Outlook (classic) both refusing to open 😂
It is that time of year again where I point a camera at a wall clock for a long duration recording. To check if the video drift is a bug in the camera driver or my software.