From 253e3041241b414c6a74bcd3d7157a19ada44c75 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 4 Jun 2020 12:59:55 +0200 Subject: [PATCH] jack: destroy link proxy Destroy the link proxy immediately so that we don't leak it. The link is marked as 'linger' and will thus keep on living even when our proxy is gone. --- pipewire-jack/src/pipewire-jack.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/pipewire-jack/src/pipewire-jack.c b/pipewire-jack/src/pipewire-jack.c index fa1219f28..0eabc21be 100644 --- a/pipewire-jack/src/pipewire-jack.c +++ b/pipewire-jack/src/pipewire-jack.c @@ -3667,6 +3667,7 @@ int jack_connect (jack_client_t *client, struct object *src, *dst; struct spa_dict props; struct spa_dict_item items[5]; + struct pw_proxy *proxy; char val[4][16]; int res; @@ -3701,7 +3702,7 @@ int jack_connect (jack_client_t *client, items[props.n_items++] = SPA_DICT_ITEM_INIT(PW_KEY_LINK_INPUT_PORT, val[3]); items[props.n_items++] = SPA_DICT_ITEM_INIT(PW_KEY_OBJECT_LINGER, "true"); - pw_core_create_object(c->core, + proxy = pw_core_create_object(c->core, "link-factory", PW_TYPE_INTERFACE_Link, PW_VERSION_LINK, @@ -3709,6 +3710,8 @@ int jack_connect (jack_client_t *client, 0); res = do_sync(c); + pw_proxy_destroy(proxy); + exit: pw_thread_loop_unlock(c->context.loop);