diff --git a/gtk2_ardour/audio_clip_editor.cc b/gtk2_ardour/audio_clip_editor.cc index e6913305ca..81546ad4e6 100644 --- a/gtk2_ardour/audio_clip_editor.cc +++ b/gtk2_ardour/audio_clip_editor.cc @@ -402,7 +402,7 @@ AudioClipEditor::drop_waves () void AudioClipEditor::set_trigger (TriggerReference& tr) { - EC_LOCAL_TEMPO_SCOPE; + /* NO LOCAL TEMPO SCOPE */ if (tr == ref) { return; @@ -418,7 +418,7 @@ AudioClipEditor::set_trigger (TriggerReference& tr) void AudioClipEditor::set_region (std::shared_ptr region) { - EC_LOCAL_TEMPO_SCOPE; + /* NO LOCAL TEMPO SCOPE */ CueEditor::set_region (region); diff --git a/gtk2_ardour/cue_editor.cc b/gtk2_ardour/cue_editor.cc index e4a92d3e13..5210e67036 100644 --- a/gtk2_ardour/cue_editor.cc +++ b/gtk2_ardour/cue_editor.cc @@ -1158,6 +1158,8 @@ CueEditor::set_track (std::shared_ptr t) void CueEditor::set_region (std::shared_ptr r) { + /* NO LOCAL TEMPO SCOPE HERE */ + if (r == _region) { return; } @@ -1166,13 +1168,17 @@ CueEditor::set_region (std::shared_ptr r) _region = r; - std::shared_ptr tmap = _region->tempo_map(); - if (tmap) { - start_local_tempo_map (tmap); - } + if (_region) { + std::shared_ptr tmap = _region->tempo_map(); + if (tmap) { + start_local_tempo_map (tmap); + } - if (!get_canvas()->is_visible()) { - _visible_pending_region = r; + if (!get_canvas()->is_visible()) { + _visible_pending_region = r; + } else { + _visible_pending_region.reset (); + } } else { _visible_pending_region.reset (); } @@ -1212,7 +1218,7 @@ CueEditor::set_from_rsu (RegionUISettings& rsu) void CueEditor::set_trigger (TriggerReference& tref) { - EC_LOCAL_TEMPO_SCOPE; + /* NO TEMPO SCOPE */ if (tref == ref) { return; @@ -1399,7 +1405,11 @@ CueEditor::idle_data_captured () void CueEditor::unset (bool trigger_too) { - end_local_tempo_map (); + /* NO LOCAL TEMPO SCOPE HERE */ + + if (_local_tempo_map) { + end_local_tempo_map (); + } _history.clear (); history_connection.disconnect(); _update_connection.disconnect(); diff --git a/gtk2_ardour/pianoroll.cc b/gtk2_ardour/pianoroll.cc index 7d395bee1b..b09cbbc989 100644 --- a/gtk2_ardour/pianoroll.cc +++ b/gtk2_ardour/pianoroll.cc @@ -1378,7 +1378,7 @@ Pianoroll::region_prop_change (PBD::PropertyChange const & what_changed) void Pianoroll::set_trigger (TriggerReference & tref) { - EC_LOCAL_TEMPO_SCOPE; + /* NO LOCAL TEMPO SCOPE */ if (ref == tref) { return;