From b8eccc3648bd5a44ca7e4c309346b52e518d4a85 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Mon, 26 Feb 2018 16:49:38 +0100 Subject: [PATCH] port: free resources --- src/pipewire/port.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/pipewire/port.c b/src/pipewire/port.c index 4143e0ebb..9b1c139dc 100644 --- a/src/pipewire/port.c +++ b/src/pipewire/port.c @@ -459,7 +459,7 @@ int pw_port_add(struct pw_port *port, struct pw_node *node) pw_log_debug("port %p: setting node io", port); spa_node_port_set_io(node->node, port->direction, port_id, - node->core->type.io.Buffers, + t->io.Buffers, port->rt.port.io, sizeof(*port->rt.port.io)); if (node->global) @@ -535,6 +535,7 @@ void pw_port_destroy(struct pw_port *port) { struct pw_node *node = port->node; struct pw_control *control, *ctemp; + struct pw_resource *resource, *tmp; pw_log_debug("port %p: destroy", port); @@ -552,6 +553,8 @@ void pw_port_destroy(struct pw_port *port) spa_hook_remove(&port->global_listener); pw_global_destroy(port->global); } + spa_list_for_each_safe(resource, tmp, &port->resource_list, link) + pw_resource_destroy(resource); pw_log_debug("port %p: free", port); spa_hook_list_call(&port->listener_list, struct pw_port_events, free);