summaryrefslogtreecommitdiff
path: root/pipewire-jack/src/pipewire-jack.c
diff options
context:
space:
mode:
authorWim Taymans <wtaymans@redhat.com>2020-06-04 13:08:39 +0200
committerWim Taymans <wtaymans@redhat.com>2020-06-04 13:08:39 +0200
commit814b74265cbd57a4e96a7d3f5d67566962ab0636 (patch)
tree73131d370627de19dfb6a1d84b6eb547a4a5df1e /pipewire-jack/src/pipewire-jack.c
parent253e3041241b414c6a74bcd3d7157a19ada44c75 (diff)
jack: stop the thread loop before we destroy objects
Diffstat (limited to 'pipewire-jack/src/pipewire-jack.c')
-rw-r--r--pipewire-jack/src/pipewire-jack.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/pipewire-jack/src/pipewire-jack.c b/pipewire-jack/src/pipewire-jack.c
index 0eabc21b..410ddbfd 100644
--- a/pipewire-jack/src/pipewire-jack.c
+++ b/pipewire-jack/src/pipewire-jack.c
@@ -2391,6 +2391,8 @@ int jack_client_close (jack_client_t *client)
res = jack_deactivate(client);
+ pw_thread_loop_stop(c->context.loop);
+
if (c->registry)
pw_proxy_destroy((struct pw_proxy*)c->registry);
if (c->metadata->proxy)
@@ -2398,7 +2400,6 @@ int jack_client_close (jack_client_t *client)
pw_core_disconnect(c->core);
pw_context_destroy(c->context.context);
- pw_thread_loop_stop(c->context.loop);
pw_thread_loop_destroy(c->context.loop);
pw_log_debug(NAME" %p: free", client);