diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2007-12-20 19:54:54 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2007-12-20 19:54:54 +0000 |
commit | 5c0d10e63a5987b3c6795551152c862766928cd8 (patch) | |
tree | 9b94ca2412a448e6909e09bdb8b810a311f65e0f /libs/ardour/session_transport.cc | |
parent | a5a0da468616cc7f25cdb86137ae9321cee7aef0 (diff) |
change behaviour of play-at-edit-point....; fix crash in SAE context with automation button; new SAE logos etc
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@2801 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r-- | libs/ardour/session_transport.cc | 12 |
1 files changed, 5 insertions, 7 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index c01f6ed063..635e32de62 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -373,7 +373,7 @@ Session::non_realtime_stop (bool abort, int on_entry, bool& finished) if ((Config->get_slave_source() == None && Config->get_auto_return()) || (post_transport_work & PostTransportLocate) || - (requested_return_frame >= 0) || + (_requested_return_frame >= 0) || synced_to_jack()) { if (pending_locate_flush) { @@ -382,14 +382,14 @@ Session::non_realtime_stop (bool abort, int on_entry, bool& finished) if (((Config->get_slave_source() == None && Config->get_auto_return()) || synced_to_jack() || - requested_return_frame >= 0) && + _requested_return_frame >= 0) && !(post_transport_work & PostTransportLocate)) { bool do_locate = false; - if (requested_return_frame >= 0) { - _transport_frame = requested_return_frame; - requested_return_frame = -1; + if (_requested_return_frame >= 0) { + _transport_frame = _requested_return_frame; + _requested_return_frame = -1; do_locate = true; } else { _transport_frame = last_stop_frame; @@ -1185,9 +1185,7 @@ Session::setup_auto_play () void Session::request_roll_at_and_return (nframes_t start, nframes_t return_to) { - request_stop (); request_locate (start, false); - Event *ev = new Event (Event::LocateRollLocate, Event::Add, Event::Immediate, return_to, 1.0); queue_event (ev); } |