]> Git Repo - qemu.git/commitdiff
audio/jack: do not remove ports when finishing
authorGeoffrey McRae <[email protected]>
Sat, 13 Jun 2020 04:05:16 +0000 (14:05 +1000)
committerGerd Hoffmann <[email protected]>
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 <[email protected]>
Message-id: 20200613040518[email protected]
Signed-off-by: Gerd Hoffmann <[email protected]>
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 */
 
This page took 0.02448 seconds and 4 git commands to generate.