summaryrefslogtreecommitdiff
path: root/libs/ardour/session_transport.cc
diff options
context:
space:
mode:
authorCarl Hetherington <carl@carlh.net>2012-09-01 11:24:17 +0000
committerCarl Hetherington <carl@carlh.net>2012-09-01 11:24:17 +0000
commitc779474c13dfae1cccdaccd2b8ad44fd69d35d3c (patch)
treee99f8dd754966fcb17d3c65745e6a2d69c71cc35 /libs/ardour/session_transport.cc
parent3eaadafd31b519b9dc1c08836f84ca42e9dee354 (diff)
Reset pending_locate_roll in all cases, not just when the
roll happened; should help with #5047. git-svn-id: svn://localhost/ardour2/branches/3.0@13158 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r--libs/ardour/session_transport.cc8
1 files changed, 6 insertions, 2 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc
index 4f0fb90c53..c25af99ab0 100644
--- a/libs/ardour/session_transport.cc
+++ b/libs/ardour/session_transport.cc
@@ -645,8 +645,12 @@ Session::non_realtime_stop (bool abort, int on_entry, bool& finished)
if ((ptw & PostTransportLocate) && !config.get_external_sync() && pending_locate_roll) {
request_transport_speed (1.0);
- pending_locate_roll = false;
}
+
+ /* Even if we didn't do a pending locate roll this time, we don't want it hanging
+ around for next time.
+ */
+ pending_locate_roll = false;
}
void
@@ -850,7 +854,7 @@ Session::locate (framepos_t target_frame, bool with_roll, bool with_flush, bool
* though, is all the housekeeping that is associated with non-linear
* changes in the value of _transport_frame.
*/
-
+
if (actively_recording() && !for_seamless_loop) {
return;
}