mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2025-11-04 13:30:12 -05:00
pulse-server: client: cancel related work queue jobs
This commit is contained in:
parent
78aaa0a3dd
commit
6d0075b4e9
2 changed files with 5 additions and 3 deletions
|
|
@ -174,6 +174,8 @@ void client_free(struct client *client)
|
||||||
|
|
||||||
pw_map_clear(&client->streams);
|
pw_map_clear(&client->streams);
|
||||||
|
|
||||||
|
pw_work_queue_cancel(impl->work_queue, client, SPA_ID_INVALID);
|
||||||
|
|
||||||
free(client->default_sink);
|
free(client->default_sink);
|
||||||
free(client->default_source);
|
free(client->default_source);
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -857,7 +857,7 @@ static void manager_metadata(void *data, struct pw_manager_object *o,
|
||||||
|
|
||||||
static void do_free_client(void *obj, void *data, int res, uint32_t id)
|
static void do_free_client(void *obj, void *data, int res, uint32_t id)
|
||||||
{
|
{
|
||||||
struct client *client = data;
|
struct client *client = obj;
|
||||||
client_free(client);
|
client_free(client);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -865,8 +865,8 @@ static void manager_disconnect(void *data)
|
||||||
{
|
{
|
||||||
struct client *client = data;
|
struct client *client = data;
|
||||||
pw_log_debug("manager_disconnect()");
|
pw_log_debug("manager_disconnect()");
|
||||||
pw_work_queue_add(client->impl->work_queue, NULL, 0,
|
pw_work_queue_add(client->impl->work_queue, client, 0,
|
||||||
do_free_client, client);
|
do_free_client, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct pw_manager_events manager_events = {
|
static const struct pw_manager_events manager_events = {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue