if a request to reset the speed to zero as the default arrives when stopped, reset...
authorPaul Davis <paul@linuxaudiosystems.com>
Thu, 26 Jul 2012 15:40:11 +0000 (15:40 +0000)
committerPaul Davis <paul@linuxaudiosystems.com>
Thu, 26 Jul 2012 15:40:11 +0000 (15:40 +0000)
git-svn-id: svn://localhost/ardour2/branches/3.0@13087 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/ardour/session_transport.cc

index 7502ded28851e0a2d152d6179823852b2af9b570..4f0fb90c53a6d76ccb2357be9aceff248c76ace7 100644 (file)
@@ -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;
        }