diff options
author | Robin Gareus <robin@gareus.org> | 2017-04-29 23:02:40 +0200 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2017-04-30 01:22:25 +0200 |
commit | 8229124078cef9fac0d4a20bc7958a3148eb092f (patch) | |
tree | 2fd5a93c2633d86916568a385a3a586cb22fcefd /libs/ardour/session_process.cc | |
parent | 73e80b4429c0d6c187acaa270659adc44620e53c (diff) |
Fix vari-speed and non-locked slave modes
A transport-speed-change is no reason to skip processing.
Prior to this change cannot_process() silently skipped in the process
cycle of the speed-change (which may have been every process-cycle),
without moving the transport or doing any processing.
Diffstat (limited to 'libs/ardour/session_process.cc')
-rw-r--r-- | libs/ardour/session_process.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/libs/ardour/session_process.cc b/libs/ardour/session_process.cc index 766ce395e5..7788eb2b97 100644 --- a/libs/ardour/session_process.cc +++ b/libs/ardour/session_process.cc @@ -674,7 +674,7 @@ Session::follow_slave (pframes_t nframes) } - if (_slave_state == Running && !non_realtime_work_pending()) { + if (_slave_state == Running && 0 == (post_transport_work () & ~PostTransportSpeed)) { /* speed is set, we're locked, and good to go */ return true; } |