diff --git a/libs/ardour/ardour/session.h b/libs/ardour/ardour/session.h index 07ab2cac5f..b0aa1f3829 100644 --- a/libs/ardour/ardour/session.h +++ b/libs/ardour/ardour/session.h @@ -1250,10 +1250,10 @@ class LIBARDOUR_API Session : public PBD::StatefulDestructible, public PBD::Scop void locations_changed (); void _locations_changed (const Locations::LocationList&); - void update_skips (Location*, bool consolidate); + void update_skips (Location*, bool consolidate); void update_marks (Location* loc); - void update_loop (Location* loc); void consolidate_skips (Location*); + void sync_locations_to_skips (); void _sync_locations_to_skips (); diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index 7ff2cecb5e..d801cedeb8 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -1316,6 +1316,8 @@ Session::auto_loop_changed (Location* location) last_loopend = location->end(); + + set_dirty(); } void @@ -1389,6 +1391,7 @@ Session::set_auto_loop_location (Location* location) location->StartChanged.connect_same_thread (loop_connections, boost::bind (&Session::auto_loop_changed, this, location)); location->EndChanged.connect_same_thread (loop_connections, boost::bind (&Session::auto_loop_changed, this, location)); location->Changed.connect_same_thread (loop_connections, boost::bind (&Session::auto_loop_changed, this, location)); + location->FlagsChanged.connect_same_thread (loop_connections, boost::bind (&Session::auto_loop_changed, this, location)); location->set_auto_loop (true, this); @@ -1412,12 +1415,6 @@ Session::set_auto_loop_location (Location* location) auto_loop_location_changed (location); } -void -Session::update_loop (Location*) -{ - set_dirty (); -} - void Session::update_marks (Location*) { @@ -1519,11 +1516,6 @@ Session::location_added (Location *location) } if (location->is_auto_loop()) { - location->StartChanged.connect_same_thread (loop_update_connections, boost::bind (&Session::update_loop, this, location)); - location->EndChanged.connect_same_thread (loop_update_connections, boost::bind (&Session::update_loop, this, location)); - location->Changed.connect_same_thread (loop_update_connections, boost::bind (&Session::update_loop, this, location)); - location->FlagsChanged.connect_same_thread (loop_update_connections, boost::bind (&Session::update_loop, this, location)); - set_auto_loop_location (location); }