summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/ardour/session.cc11
1 files changed, 10 insertions, 1 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index b1b0b1e1b5..b24ad53b37 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -1604,6 +1604,15 @@ Session::location_added (Location *location)
_session_range_location = location;
}
+ if (location->is_mark()) {
+ /* listen for per-location signals that require us to do any * global updates for marks */
+
+ location->StartChanged.connect_same_thread (skip_update_connections, boost::bind (&Session::update_marks, this, location));
+ location->EndChanged.connect_same_thread (skip_update_connections, boost::bind (&Session::update_marks, this, location));
+ location->Changed.connect_same_thread (skip_update_connections, boost::bind (&Session::update_marks, this, location));
+ location->FlagsChanged.connect_same_thread (skip_update_connections, boost::bind (&Session::update_marks, this, location));
+ }
+
if (location->is_skip()) {
/* listen for per-location signals that require us to update skip-locate events */
@@ -1614,7 +1623,7 @@ Session::location_added (Location *location)
update_skips (location, true);
}
-
+
set_dirty ();
}