jack: wait for transport

Wait for the transport to be configured before we exit from
client_open. We then have at least an activation or even a driver
set.
This commit is contained in:
Wim Taymans 2020-02-07 13:30:24 +01:00
parent 4d143c5751
commit 14fbd4f520

View file

@ -1143,6 +1143,7 @@ static int client_node_transport(void *object,
true, on_rtsocket_condition, c);
c->has_transport = true;
pw_thread_loop_signal(c->context.loop, false);
return 0;
}
@ -2206,8 +2207,15 @@ jack_client_t * jack_client_open (const char *client_name,
PW_CLIENT_NODE_UPDATE_INFO,
0, NULL, &ni);
if (do_sync(client) < 0)
goto init_failed;
while (true) {
pw_thread_loop_wait(client->context.loop);
if (client->error)
goto init_failed;
if (client->has_transport)
break;
}
pw_thread_loop_unlock(client->context.loop);