From 9c0fc83f4523a6d57a791a704a9710e7e72a634d Mon Sep 17 00:00:00 2001 From: der richter Date: Mon, 1 Apr 2024 14:47:46 +0200 Subject: mac/apphub: only instantiate log and option when in Application mode when in libmpv mode there is no need to for logging and reading options. this also prevents possible race conditions with the usage and deinit of the mpv_handler. --- osdep/mac/app_hub.swift | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) (limited to 'osdep/mac') diff --git a/osdep/mac/app_hub.swift b/osdep/mac/app_hub.swift index a46bdc87c7..aba185cb2c 100644 --- a/osdep/mac/app_hub.swift +++ b/osdep/mac/app_hub.swift @@ -50,11 +50,13 @@ class AppHub: NSObject { } @objc func initMpv(_ mpv: OpaquePointer) { - log.log = mp_log_new(UnsafeMutablePointer(mpv), mp_client_get_log(mpv), "app") - option = OptionHelper(UnsafeMutablePointer(mpv), mp_client_get_global(mpv)) - input.option = option event = EventHelper(self, mpv) - self.mpv = event?.mpv + if let mpv = event?.mpv { + self.mpv = mpv + log.log = mp_log_new(UnsafeMutablePointer(mpv), mp_client_get_log(mpv), "app") + option = OptionHelper(UnsafeMutablePointer(mpv), mp_client_get_global(mpv)) + input.option = option + } #if HAVE_MACOS_MEDIA_PLAYER remote?.registerEvents() -- cgit v1.2.3