diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2014-05-02 18:43:04 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2014-05-02 18:43:04 -0400 |
commit | 25a5c317f93fad7ffd3035049bb133169233c5ce (patch) | |
tree | 7d265d7af044e32bb86073965733cd9936bbff21 /libs/ardour/location.cc | |
parent | 3fa8127d5879d59e1f9aac51af10a3474d8fd611 (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.cc | 13 |
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 (); |