audio/jack: do not remove ports when finishing

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>
This commit is contained in:
Geoffrey McRae 2020-06-13 14:05:16 +10:00 committed by Gerd Hoffmann
parent f8f0f218d4
commit de82640843

View File

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