From 8d5e7749c2aea22362fc645d8897ce608d402234 Mon Sep 17 00:00:00 2001 From: Wim Taymans Date: Thu, 14 Dec 2023 11:10:52 +0100 Subject: [PATCH] jack: handle -ENOENT from the core This means that we tried to do something on a proxy that was destroyed on the server and we should just ignore the error. --- pipewire-jack/src/pipewire-jack.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/pipewire-jack/src/pipewire-jack.c b/pipewire-jack/src/pipewire-jack.c index f87c325d9..b891e60a3 100644 --- a/pipewire-jack/src/pipewire-jack.c +++ b/pipewire-jack/src/pipewire-jack.c @@ -1210,6 +1210,11 @@ static void on_error(void *data, uint32_t id, int seq, int res, const char *mess id, seq, res, spa_strerror(res), message); if (id == PW_ID_CORE) { + /* This happens when we did something on a proxy that + * was destroyed on the server already */ + if (res == -ENOENT) + return; + client->last_res = res; if (res == -EPIPE && !client->destroyed) { queue_notify(client, NOTIFY_TYPE_SHUTDOWN, @@ -4064,6 +4069,7 @@ server_failed: exit_unlock: pw_thread_loop_unlock(client->context.loop); exit: + pw_log_info("%p: error %d", client, *status); jack_client_close((jack_client_t *) client); return NULL; disabled: