diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2019-11-23 15:52:05 -0700 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2019-11-23 15:52:05 -0700 |
commit | d39f19f559a71cf7ce6be4468f33a0533f175166 (patch) | |
tree | f7c6d5c001708adb6bcf140b0e73b2d6f8f3ba15 /libs/ardour/session_transport.cc | |
parent | dbf06eb2cfd361590e0988388bfda293fca909bc (diff) |
fix incorrect removal of autoloop event when loop bounds are changed while looping
Diffstat (limited to 'libs/ardour/session_transport.cc')
-rw-r--r-- | libs/ardour/session_transport.cc | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/libs/ardour/session_transport.cc b/libs/ardour/session_transport.cc index e61e8fee59..6d9f99127a 100644 --- a/libs/ardour/session_transport.cc +++ b/libs/ardour/session_transport.cc @@ -349,10 +349,9 @@ Session::locate (samplepos_t target_sample, bool with_roll, bool with_flush, boo TFSM_EVENT (TransportFSM::ButlerRequired); } else { TFSM_EVENT (TransportFSM::LocateDone); + loop_changing = false; } - loop_changing = false; - _send_timecode_update = true; if (with_mmc) { @@ -713,6 +712,7 @@ Session::butler_completed_transport_work () post_locate (); ptw = PostTransportWork (ptw & ~PostTransportLocate); set_post_transport_work (ptw); + loop_changing = false; TFSM_EVENT (TransportFSM::LocateDone); } @@ -1564,7 +1564,7 @@ Session::non_realtime_stop (bool abort, int on_entry, bool& finished) if (ptw & (PostTransportClearSubstate|PostTransportStop)) { unset_play_range (); - if (!Config->get_loop_is_mode()) { + if (!loop_changing && !Config->get_loop_is_mode()) { unset_play_loop (); } } |