diff options
Diffstat (limited to 'player/main.c')
-rw-r--r-- | player/main.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/player/main.c b/player/main.c index 90841f5fdf..defceb43e5 100644 --- a/player/main.c +++ b/player/main.c @@ -114,11 +114,15 @@ static void shutdown_clients(struct MPContext *mpctx) mp_dispatch_queue_process(mpctx->dispatch, 0); mp_wait_events(mpctx, 10000); } - mp_clients_destroy(mpctx); } void mp_destroy(struct MPContext *mpctx) { +#if !defined(__MINGW32__) + mp_uninit_ipc(mpctx->ipc_ctx); + mpctx->ipc_ctx = NULL; +#endif + shutdown_clients(mpctx); uninit_audio_out(mpctx); @@ -131,13 +135,10 @@ void mp_destroy(struct MPContext *mpctx) mpctx->encode_lavc_ctx = NULL; -#if !defined(__MINGW32__) - mp_uninit_ipc(mpctx->ipc_ctx); - mpctx->ipc_ctx = NULL; -#endif - command_uninit(mpctx); + mp_clients_destroy(mpctx); + osd_free(mpctx->osd); if (mpctx->opts->use_terminal && terminal_initialized) { |