Environment
- Server Version: 1.41.7.9823
- Player Version: 1.110.0.351-4e48eb83
- OS: macOS 15.0 (Sequoia) – build 26.0.1
- Hardware: Apple Silicon (Mac16,10)
Summary
Plex Desktop for macOS consistently crashes when an external display is powered off or disconnected. The issue appears to be related to OpenGL context loss during display reconfiguration.
Steps to Reproduce
- Launch Plex Desktop on macOS Sequoia.
- Begin playback or leave the app idle with the window visible.
- Turn off or disconnect the external monitor (or let the display sleep).
- Within seconds, Plex quits unexpectedly.
Expected Behavior
Plex should gracefully handle display loss, suspending rendering until the display is restored.
Actual Behavior
Plex aborts immediately, producing a SIGABRT (`EXC_CRASH`) with the following top stack frames:
__assert_rtn
CGSWindowUnlockBackingWriter
SLSUnlockWindowBits
-[NSOpenGLContext flushBuffer]
Analysis
- The crash originates in Apple’s SkyLight / OpenGL frameworks.
- It occurs when Plex attempts to flush an OpenGL drawable tied to a now-invalid window surface after the display has been detached or powered down.
- This behavior is new in macOS 15 Sequoia, which changed display reconfiguration handling.
- Plex’s Qt-based OpenGL context likely needs to be suspended when no active drawable is available.
Additional Notes
Crash report shows `Crashed Thread: 0 (CrBrowserMain)` and termination reason `Abort trap: 6`.
The issue is reproducible every time the monitor is switched off while Plex Desktop is open.