diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-03-20 01:43:54 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-03-20 01:43:54 +0000 |
commit | a13d2196c8c40350e90cba061e3f66e2a65a65dd (patch) | |
tree | 8ff443835c34c774768cb5dd56a577ac6bc408bd /libs/ardour/session_transport.cc | |
parent | 82b4c84e1d7de7e90fb65775d45154d1319a4309 (diff) |
do not start transport on first locate if auto-play is on; wait till GUI says its OK
git-svn-id: svn://localhost/ardour2/trunk@1630 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r-- | libs/ardour/session_transport.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index c0468a63ca..950d74edec 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -639,7 +639,7 @@ Session::locate (nframes_t target_frame, bool with_roll, bool with_flush, bool w } } - if (transport_rolling() && !Config->get_auto_play() && !with_roll && !(synced_to_jack() && play_loop)) { + if (transport_rolling() && (!auto_play_legal || Config->get_auto_play()) && !with_roll && !(synced_to_jack() && play_loop)) { realtime_stop (false); } @@ -924,7 +924,7 @@ Session::post_transport () if (post_transport_work & PostTransportLocate) { - if (((Config->get_slave_source() == None && Config->get_auto_play()) && !_exporting) || (post_transport_work & PostTransportRoll)) { + if (((Config->get_slave_source() == None && (auto_play_legal && Config->get_auto_play())) && !_exporting) || (post_transport_work & PostTransportRoll)) { start_transport (); } else { @@ -1249,3 +1249,9 @@ Session::update_latency_compensation_proxy (void* ignored) { update_latency_compensation (false, false); } + +void +Session::allow_auto_play (bool yn) +{ + auto_play_legal = yn; +} |