13
0

Prevent infinite loops

This commit is contained in:
Roy Vegard Ovesen 2013-04-03 16:18:42 +02:00
parent d94a3c2bd0
commit 810a603fb2

View File

@ -666,16 +666,21 @@ ARDOUR_UI::startup ()
if (!nsm->init (nsm_url)) { if (!nsm->init (nsm_url)) {
nsm->announce (PROGRAM_NAME, ":dirty:", "ardour3"); nsm->announce (PROGRAM_NAME, ":dirty:", "ardour3");
unsigned int i = 0;
// wait for announce reply from nsm server // wait for announce reply from nsm server
do { for ( i = 0; i < 5000; ++i) {
nsm->check (); nsm->check ();
usleep (10); usleep (i);
} while (!nsm->is_active ()); if (nsm->is_active())
break;
}
// wait for open command from nsm server // wait for open command from nsm server
do { for ( i = 0; i < 5000; ++i) {
nsm->check (); nsm->check ();
usleep (10); usleep (1000);
} while (!nsm->client_id ()); if (nsm->client_id ())
break;
}
if (_session && nsm) { if (_session && nsm) {
_session->set_nsm_state( nsm->is_active() ); _session->set_nsm_state( nsm->is_active() );