summaryrefslogtreecommitdiff
path: root/libs/ardour/session_transport.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2019-10-26 01:06:04 +0200
committerRobin Gareus <robin@gareus.org>2019-10-26 01:06:04 +0200
commitc398576e4a18d3b3a76059ae6d16776cc5e820db (patch)
treeb19a6ac60f787382e40fa7ca24af56321d2c5129 /libs/ardour/session_transport.cc
parent35788fbaaaabcb9555a08c100f1fb988295d36c3 (diff)
Fix latency compensation race-condition
Remove need for explicit `initialize_latencies` call that used to be called from GUI-thread post_engine_init(), as well as Session::engine_running(). Further reduce calls, `graph_reordered` implies a latency-update and fix ordering issue. update_latency_compensation() must be called *after* resort_routes().
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r--libs/ardour/session_transport.cc3
1 files changed, 1 insertions, 2 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc
index b613b35f82..03f93b8556 100644
--- a/libs/ardour/session_transport.cc
+++ b/libs/ardour/session_transport.cc
@@ -1869,7 +1869,6 @@ Session::engine_halted ()
void
Session::engine_running ()
{
- initialize_latencies ();
_transport_fsm->start ();
}
@@ -1907,8 +1906,8 @@ Session::route_processors_changed (RouteProcessorChange c)
return;
}
- update_latency_compensation ();
resort_routes ();
+ update_latency_compensation ();
set_dirty ();
}