summaryrefslogtreecommitdiff
path: root/libs/ardour/session_transport.cc
diff options
context:
space:
mode:
authorRobin Gareus <robin@gareus.org>2017-07-21 21:46:36 +0200
committerRobin Gareus <robin@gareus.org>2017-07-21 21:48:20 +0200
commit243cd35a36473e78dc9d09985deee2198410f570 (patch)
tree83a61d3dfa17a027da5ebcf1fcef74d3c35e4ca6 /libs/ardour/session_transport.cc
parent36f70d2bc2f88bfeb362e76be573146f699e1bd9 (diff)
Fix VCA Automation: end write pass
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r--libs/ardour/session_transport.cc8
1 files changed, 8 insertions, 0 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc
index 8eb25bfbd8..faf6458b16 100644
--- a/libs/ardour/session_transport.cc
+++ b/libs/ardour/session_transport.cc
@@ -48,6 +48,8 @@
#include "ardour/slave.h"
#include "ardour/tempo.h"
#include "ardour/operations.h"
+#include "ardour/vca.h"
+#include "ardour/vca_manager.h"
#include "pbd/i18n.h"
@@ -792,9 +794,15 @@ Session::non_realtime_stop (bool abort, int on_entry, bool& finished)
if (_engine.running()) {
PostTransportWork ptw = post_transport_work ();
+
for (RouteList::iterator i = r->begin(); i != r->end(); ++i) {
(*i)->nonrealtime_handle_transport_stopped (abort, (ptw & PostTransportLocate), (!(ptw & PostTransportLocate) || pending_locate_flush));
}
+ VCAList v = _vca_manager->vcas ();
+ for (VCAList::const_iterator i = v.begin(); i != v.end(); ++i) {
+ (*i)->transport_stopped (_transport_frame);
+ }
+
update_latency_compensation ();
}