From 9da9e85cba08b8fad35044c12fdefecd8c8ebcf2 Mon Sep 17 00:00:00 2001 From: Frank Praznik Date: Tue, 8 Feb 2022 12:59:01 -0500 Subject: [PATCH] audio: pipewire: Reset all hotplug values and pointers on shutdown Ensure that all hotplug variables and pointers are reset to NULL or their original value when shutting down. --- src/audio/pipewire/SDL_pipewire.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/audio/pipewire/SDL_pipewire.c b/src/audio/pipewire/SDL_pipewire.c index 0c1436f1f..1d119c8e6 100644 --- a/src/audio/pipewire/SDL_pipewire.c +++ b/src/audio/pipewire/SDL_pipewire.c @@ -744,20 +744,27 @@ hotplug_loop_destroy() hotplug_init_complete = SDL_FALSE; hotplug_events_enabled = SDL_FALSE; + pipewire_default_sink_id = SPA_ID_INVALID; + pipewire_default_source_id = SPA_ID_INVALID; + if (hotplug_registry) { PIPEWIRE_pw_proxy_destroy((struct pw_proxy *)hotplug_registry); + hotplug_registry = NULL; } if (hotplug_core) { PIPEWIRE_pw_core_disconnect(hotplug_core); + hotplug_core = NULL; } if (hotplug_context) { PIPEWIRE_pw_context_destroy(hotplug_context); + hotplug_context = NULL; } if (hotplug_loop) { PIPEWIRE_pw_thread_loop_destroy(hotplug_loop); + hotplug_loop = NULL; } }