summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--osdep/macosx_application.m2
-rw-r--r--player/main.c8
2 files changed, 2 insertions, 8 deletions
diff --git a/osdep/macosx_application.m b/osdep/macosx_application.m
index fa5058fd1d..008622f3ea 100644
--- a/osdep/macosx_application.m
+++ b/osdep/macosx_application.m
@@ -274,6 +274,8 @@ static void *playback_thread(void *ctx_obj)
@autoreleasepool {
struct playback_thread_ctx *ctx = (struct playback_thread_ctx*) ctx_obj;
ctx->mpv_main(*ctx->argc, *ctx->argv);
+ terminate_cocoa_application();
+ // normally never reached
cocoa_stop_runloop();
pthread_exit(NULL);
}
diff --git a/player/main.c b/player/main.c
index b5ec21db0a..118aef9eed 100644
--- a/player/main.c
+++ b/player/main.c
@@ -71,9 +71,6 @@
#endif
#endif
-#if HAVE_COCOA_APPLICATION
-#include "osdep/macosx_application.h"
-#endif
#if HAVE_COCOA
#include "osdep/macosx_events.h"
#endif
@@ -227,11 +224,6 @@ static int prepare_exit_cplayer(struct MPContext *mpctx, enum exit_reason how)
rc = mpctx->quit_custom_rc;
mp_destroy(mpctx);
-
-#if HAVE_COCOA_APPLICATION
- // Note: this function never returns due to Cocoa calling exit(0)
- terminate_cocoa_application();
-#endif
return rc;
}