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:
parent
f8f0f218d4
commit
de82640843
@ -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 */
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user