mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-12-17 08:56:49 -05:00
jack: remove nodes we created
This commit is contained in:
parent
177ffd766c
commit
127d69e4a0
2 changed files with 11 additions and 0 deletions
|
|
@ -84,6 +84,7 @@ struct impl {
|
||||||
struct spa_list socket_list;
|
struct spa_list socket_list;
|
||||||
struct spa_list client_list;
|
struct spa_list client_list;
|
||||||
struct spa_list link_list;
|
struct spa_list link_list;
|
||||||
|
struct spa_list node_list;
|
||||||
|
|
||||||
struct spa_loop_control_hooks hooks;
|
struct spa_loop_control_hooks hooks;
|
||||||
|
|
||||||
|
|
@ -1238,6 +1239,8 @@ make_audio_client(struct impl *impl)
|
||||||
server->audio_ref_num = ref_num;
|
server->audio_ref_num = ref_num;
|
||||||
server->audio_node = node;
|
server->audio_node = node;
|
||||||
|
|
||||||
|
spa_list_append(&impl->node_list, &jc->link);
|
||||||
|
|
||||||
pw_log_debug("module-jack %p: Added audio driver %d", impl, ref_num);
|
pw_log_debug("module-jack %p: Added audio driver %d", impl, ref_num);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
|
|
@ -1275,6 +1278,8 @@ make_freewheel_client(struct impl *impl)
|
||||||
server->freewheel_ref_num = ref_num;
|
server->freewheel_ref_num = ref_num;
|
||||||
pw_log_debug("module-jack %p: Added freewheel driver %d", impl, ref_num);
|
pw_log_debug("module-jack %p: Added freewheel driver %d", impl, ref_num);
|
||||||
|
|
||||||
|
spa_list_append(&impl->node_list, &jc->link);
|
||||||
|
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -1472,12 +1477,16 @@ static void module_destroy(void *data)
|
||||||
{
|
{
|
||||||
struct impl *impl = data;
|
struct impl *impl = data;
|
||||||
struct link *ld, *t;
|
struct link *ld, *t;
|
||||||
|
struct jack_client *jc, *tc;
|
||||||
|
|
||||||
spa_hook_remove(&impl->module_listener);
|
spa_hook_remove(&impl->module_listener);
|
||||||
|
|
||||||
spa_list_for_each_safe(ld, t, &impl->link_list, link_link)
|
spa_list_for_each_safe(ld, t, &impl->link_list, link_link)
|
||||||
pw_link_destroy(ld->link);
|
pw_link_destroy(ld->link);
|
||||||
|
|
||||||
|
spa_list_for_each_safe(jc, tc, &impl->node_list, link)
|
||||||
|
pw_jack_node_destroy(jc->node);
|
||||||
|
|
||||||
if (impl->properties)
|
if (impl->properties)
|
||||||
pw_properties_free(impl->properties);
|
pw_properties_free(impl->properties);
|
||||||
|
|
||||||
|
|
@ -1508,6 +1517,7 @@ static bool module_init(struct pw_module *module, struct pw_properties *properti
|
||||||
spa_list_init(&impl->socket_list);
|
spa_list_init(&impl->socket_list);
|
||||||
spa_list_init(&impl->client_list);
|
spa_list_init(&impl->client_list);
|
||||||
spa_list_init(&impl->link_list);
|
spa_list_init(&impl->link_list);
|
||||||
|
spa_list_init(&impl->node_list);
|
||||||
spa_list_init(&impl->rt.nodes);
|
spa_list_init(&impl->rt.nodes);
|
||||||
|
|
||||||
str = NULL;
|
str = NULL;
|
||||||
|
|
|
||||||
|
|
@ -20,6 +20,7 @@
|
||||||
struct jack_server;
|
struct jack_server;
|
||||||
|
|
||||||
struct jack_client {
|
struct jack_client {
|
||||||
|
struct spa_list link;
|
||||||
void *data;
|
void *data;
|
||||||
struct client *owner;
|
struct client *owner;
|
||||||
struct pw_jack_node *node;
|
struct pw_jack_node *node;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue