Properly disable looping when deleting loop-range
authorRobin Gareus <robin@gareus.org>
Fri, 5 Oct 2018 19:48:41 +0000 (21:48 +0200)
committerRobin Gareus <robin@gareus.org>
Fri, 5 Oct 2018 19:50:55 +0000 (21:50 +0200)
libs/ardour/session.cc
libs/ardour/session_transport.cc

index 654234c51566d7a58618b48701ad3baa9db7cae9..f8fc5639f7ee090c6f0b6ace15767e535bc793de 100644 (file)
@@ -1955,7 +1955,10 @@ Session::location_removed (Location *location)
 {
        if (location->is_auto_loop()) {
                set_auto_loop_location (0);
-               set_track_loop (false);
+               if (!play_loop) {
+                       set_track_loop (false);
+               }
+               unset_play_loop ();
        }
 
        if (location->is_auto_punch()) {
index b87a77c417c134e8caf72ccb4453e940173f63e3..99ce3e46ed28dcd8a20fd2b2b46a291bd67e1dae 100644 (file)
@@ -1000,6 +1000,7 @@ Session::unset_play_loop ()
                        add_post_transport_work (PostTransportLocate);
                        _butler->schedule_transport_work ();
                }
+               TransportStateChange (); /* EMIT SIGNAL */
        }
 }