summaryrefslogtreecommitdiff
path: root/libs/ardour/location.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2014-05-02 18:43:04 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2014-05-02 18:43:04 -0400
commit25a5c317f93fad7ffd3035049bb133169233c5ce (patch)
tree7d265d7af044e32bb86073965733cd9936bbff21 /libs/ardour/location.cc
parent3fa8127d5879d59e1f9aac51af10a3474d8fd611 (diff)
changing the start (position) of a marker with a scene change needs to update the SceneChanger
Diffstat (limited to 'libs/ardour/location.cc')
-rw-r--r--libs/ardour/location.cc13
1 files changed, 9 insertions, 4 deletions
diff --git a/libs/ardour/location.cc b/libs/ardour/location.cc
index 90265af4e4..eef94797e9 100644
--- a/libs/ardour/location.cc
+++ b/libs/ardour/location.cc
@@ -188,6 +188,14 @@ Location::set_start (framepos_t s, bool force, bool allow_bbt_recompute)
end_changed (this); /* EMIT SIGNAL */
}
+ /* moving the start (position) of a marker with a scene change
+ requires an update in the Scene Changer.
+ */
+
+ if (_scene_change) {
+ scene_changed (); /* EMIT SIGNAL */
+ }
+
assert (_start >= 0);
assert (_end >= 0);
@@ -203,6 +211,7 @@ Location::set_start (framepos_t s, bool force, bool allow_bbt_recompute)
recompute_bbt_from_frames ();
}
start_changed (this); /* EMIT SIGNAL */
+
if (is_session_range ()) {
Session::StartTimeChanged (old); /* EMIT SIGNAL */
AudioFileSource::set_header_position_offset (s);
@@ -536,10 +545,6 @@ Location::set_state (const XMLNode& node, int version)
if (scene_child) {
_scene_change = SceneChange::factory (*scene_child, version);
-
- if (_scene_change) {
- _scene_change->set_time (_start);
- }
}
recompute_bbt_from_frames ();