summaryrefslogtreecommitdiff
path: root/libs/ardour/session_transport.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2012-07-26 15:40:11 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2012-07-26 15:40:11 +0000
commite8c914f0fa2a1c34d69a7e8ef649b14709f17374 (patch)
treeb6f9e8ca3a9ecee96b0d2331cad98208765e3afc /libs/ardour/session_transport.cc
parent4b38ddec62d6ecaff978b6c54b5386d904419437 (diff)
if a request to reset the speed to zero as the default arrives when stopped, reset the default speed to 1.0 (and nothing else). hacky, could probably use Session::request_reset_default_transport_speed()
git-svn-id: svn://localhost/ardour2/branches/3.0@13087 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r--libs/ardour/session_transport.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc
index 7502ded288..4f0fb90c53 100644
--- a/libs/ardour/session_transport.cc
+++ b/libs/ardour/session_transport.cc
@@ -1001,10 +1001,13 @@ Session::locate (framepos_t target_frame, bool with_roll, bool with_flush, bool
void
Session::set_transport_speed (double speed, bool abort, bool clear_state, bool as_default)
{
- DEBUG_TRACE (DEBUG::Transport, string_compose ("@ %5 Set transport speed to %1, abort = %2 clear_state = %3, current = %4 as_default %5\n",
+ DEBUG_TRACE (DEBUG::Transport, string_compose ("@ %5 Set transport speed to %1, abort = %2 clear_state = %3, current = %4 as_default %6\n",
speed, abort, clear_state, _transport_speed, _transport_frame, as_default));
if (_transport_speed == speed) {
+ if (as_default && speed == 0.0) { // => reset default transport speed. hacky or what?
+ _default_transport_speed = 1.0;
+ }
return;
}