From 060926b7497e5bbf17a1b9e47817ec9ee2da705d Mon Sep 17 00:00:00 2001 From: edde746 <86283021+edde746@users.noreply.github.com> Date: Sun, 3 May 2026 10:59:30 +0200 Subject: [PATCH] fix(macos): avoid double disposing mpv core --- macos/Runner/MpvPlayer/MpvPlayerCore.swift | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/macos/Runner/MpvPlayer/MpvPlayerCore.swift b/macos/Runner/MpvPlayer/MpvPlayerCore.swift index ad5b5012..d9faa47b 100644 --- a/macos/Runner/MpvPlayer/MpvPlayerCore.swift +++ b/macos/Runner/MpvPlayer/MpvPlayerCore.swift @@ -7,6 +7,7 @@ class MpvPlayerCore: MpvPlayerCoreBase { private weak var window: NSWindow? private var playbackActivity: NSObjectProtocol? private var layerHiddenForOcclusion = false + private var isDisposed = false func initialize(in window: NSWindow) -> Bool { guard !isInitialized else { @@ -170,6 +171,9 @@ class MpvPlayerCore: MpvPlayerCoreBase { } func dispose() { + if isDisposed { return } + isDisposed = true + endPlaybackActivity() NotificationCenter.default.removeObserver(self) disposeSharedState(destroySynchronously: false)