summaryrefslogtreecommitdiff
path: root/libs/ardour/session.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2020-04-27 16:31:40 +0200
committerRobin Gareus <robin@gareus.org>2020-04-27 16:31:40 +0200
commit09f9cd377d4e70e8e88c1fae24cb1a4fe40d1080 (patch)
treee15cb78319f0fdefa1451874042c93ff7e2a8858 /libs/ardour/session.cc
parentd6242f35f5ec9e355273b871ecadc5ac40e09527 (diff)
Prevent excessive latency recomputations
Session::update_latency() may be called multiple times with the process-lock being held.
Diffstat (limited to 'libs/ardour/session.cc')
-rw-r--r--libs/ardour/session.cc3
1 files changed, 3 insertions, 0 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index 1ec274b917..d422555666 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -7020,6 +7020,9 @@ Session::auto_connect_thread_run ()
*/
while (g_atomic_int_and (&_latency_recompute_pending, 0)) {
update_latency_compensation (true, false);
+ if (g_atomic_int_get (&_latency_recompute_pending)) {
+ Glib::usleep (1000);
+ }
}
}