fix missing buffer reversal under some reverse-play situations
authorPaul Davis <paul@linuxaudiosystems.com>
Fri, 2 Feb 2007 17:41:38 +0000 (17:41 +0000)
committerPaul Davis <paul@linuxaudiosystems.com>
Fri, 2 Feb 2007 17:41:38 +0000 (17:41 +0000)
git-svn-id: svn://localhost/ardour2/trunk@1407 d708f5d6-7413-0410-9779-e7cbd77b26cf

libs/ardour/session_transport.cc

index 9452cb3558e0b798c6d031c34e4a345219eebea2..ef9c08cc69cb94f2b90d12a7bf362fed9849feeb 100644 (file)
@@ -799,7 +799,7 @@ Session::set_transport_speed (float speed, bool abort)
                   before the last stop, then we have to do extra work.
                */
 
-               if ((_transport_speed && speed * _transport_speed < 0.0f) || (_last_transport_speed * speed < 0.0f)) {
+               if ((_transport_speed && speed * _transport_speed < 0.0f) || (_last_transport_speed * speed < 0.0f) || (_last_transport_speed == 0.0f && speed < 0.0f)) {
                        post_transport_work = PostTransportWork (post_transport_work | PostTransportReverse);
                }