HydraIssues

hydraheadipad: crash in DataManager init — managedObjectContext unrecognized selector (v0.2.59)
open bug Project: hydraheadipad Reporter: 21 May 2026 19:40

Description

Crash

App crashes in StreamFrameViewController viewDidLoad when DataManager init calls managedObjectContext on an object that does not implement that selector.

Exception

Exception Reason: -[(dynamic class) managedObjectContext]: unrecognized selector sent to instance 0x109ddec60
Termination Reason: SIGNAL 6 Abort trap: 6

Backtrace (key frames)

0   CoreFoundation    __exceptionPreprocess + 164
1   libobjc.A.dylib   objc_exception_throw
2   CoreFoundation    -[NSObject doesNotRecognizeSelector:]
6   HydraHeadiPad     -[DataManager init] + 236 (DataManager.m:33)
7   HydraHeadiPad     -[StreamFrameViewController viewDidLoad] + 156 (StreamFrameViewController.m:86)
...
22  HydraHeadiPad     HydraStreamSession startWithHost block (HydraStreamSession.m:63)

Version

v0.2.59 (build 82), 2026-05-19

Source issue

Crash report #288

Root cause

DataManager.m:33 calls managedObjectContext on an object. At runtime the object is a dynamic class that does not respond to that selector — likely a Core Data NSManagedObject that was deallocated or is the wrong type. DataManager is initialized on every viewDidLoad of StreamFrameViewController, which is presented on every stream start.

Notes

  • Distinct from #274 (MicrophoneRelay double-start)
  • Versions 0.2.115+ show a different crash in MicrophoneRelay.startAsync (see issues #284-#279) suggesting DataManager may have been fixed but MicrophoneRelay regression introduced