From 77e50d2dfef7306ebaaeec12976c848a56ccd287 Mon Sep 17 00:00:00 2001 From: Pauli Virtanen Date: Fri, 4 Feb 2022 20:10:26 +0200 Subject: [PATCH] pulse-server: sync manager before module unload completion Operations sync manager, so use that. On Pulseaudio, module unload is async procedure. However, this race condition may be hard to hit in practice, whereas on pipewire-pulse it's not hard. E.g. Zoom appears to assume that modules are unloaded synchronously. --- src/modules/module-protocol-pulse/pulse-server.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/modules/module-protocol-pulse/pulse-server.c b/src/modules/module-protocol-pulse/pulse-server.c index 92efda5b5..c3172c8a6 100644 --- a/src/modules/module-protocol-pulse/pulse-server.c +++ b/src/modules/module-protocol-pulse/pulse-server.c @@ -4914,7 +4914,7 @@ static int do_unload_module(struct client *client, uint32_t command, uint32_t ta module_unload(module); - return reply_simple_ack(client, tag); + return operation_new(client, tag); } static int do_send_object_message(struct client *client, uint32_t command, uint32_t tag, struct message *m)