fix mistaken "do not roll" conclusion in TransportFSM::compute_should_roll() carl-master
authorPaul Davis <paul@linuxaudiosystems.com>
Sun, 19 Jan 2020 04:14:17 +0000 (21:14 -0700)
committerPaul Davis <paul@linuxaudiosystems.com>
Sun, 19 Jan 2020 04:14:17 +0000 (21:14 -0700)
libs/ardour/transport_fsm.cc

index 8e3ef98cfac9bdbe9c66194a50f6ae95c70570cf..26de519db18db7066bd5bda25620fa2200478400 100644 (file)
@@ -418,7 +418,10 @@ TransportFSM::compute_should_roll (LocateTransportDisposition ltd) const
        case MustStop:
                return false;
        case RollIfAppropriate:
-               if (rolling()) {
+               /* by the time we call this, if we were rolling before the
+                  locate, we've already transitioned into DeclickToLocate
+               */
+               if (_motion_state == DeclickToLocate) {
                        return true;
                } else {
                        return api->should_roll_after_locate ();