summaryrefslogtreecommitdiff
path: root/libs/ardour
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2018-07-30 17:32:03 +0200
committerRobin Gareus <robin@gareus.org>2018-07-30 17:47:29 +0200
commit592496eb093ffa0ce19dcc189adb04ff602af582 (patch)
treee327f0b740fdef97a28360f4492426a4af9bc73d /libs/ardour
parente951a55d02178395692e4f86385d41c8ffac5f47 (diff)
Fix "session dirty" flicker during session-setup.
Loading a session includes setting the sync-source, this is queued to happen during process(), which may or may not be while Session::Loading is still set. This change only catches the common case: internal transport, no slave.
Diffstat (limited to 'libs/ardour')
-rw-r--r--libs/ardour/session_transport.cc4
1 files changed, 4 insertions, 0 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc
index 1b17362946..b69565f384 100644
--- a/libs/ardour/session_transport.cc
+++ b/libs/ardour/session_transport.cc
@@ -1740,6 +1740,10 @@ Session::use_sync_source (Slave* new_slave)
{
/* Runs in process() context */
+ if (!_slave && !new_slave) {
+ return;
+ }
+
bool non_rt_required = false;
/* XXX this deletion is problematic because we're in RT context */