]> git.proxmox.com Git - mirror_qemu.git/commitdiff
audio/jack: do not remove ports when finishing
authorGeoffrey McRae <geoff@hostfission.com>
Sat, 13 Jun 2020 04:05:16 +0000 (14:05 +1000)
committerGerd Hoffmann <kraxel@redhat.com>
Wed, 17 Jun 2020 12:44:51 +0000 (14:44 +0200)
This fixes a hang when there is a communications issue with the JACK
server. Simply closing the connection is enough to completely clean up
and as such we do not need to remove the ports first. As JACK uses a
socket based protocol that relies on the `select` call, if there is a
communication breakdown with the server the client library waits
forever for a response to the unregister request.

Signed-off-by: Geoffrey McRae <geoff@hostfission.com>
Message-id: 20200613040518.38172-5-geoff@hostfission.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
audio/jackaudio.c

index 58c73444977ed771e05f10769b6369179eeadd65..249cbd3265c5af537869153a91859a42b9746ac2 100644 (file)
@@ -548,9 +548,6 @@ static void qjack_client_fini(QJackClient *c)
 {
     switch (c->state) {
     case QJACK_STATE_RUNNING:
-        for (int i = 0; i < c->nchannels; ++i) {
-            jack_port_unregister(c->client, c->port[i]);
-        }
         jack_deactivate(c->client);
         /* fallthrough */