diff options
author | nick_m <mainsbridge@gmail.com> | 2016-06-21 22:04:06 +1000 |
---|---|---|
committer | nick_m <mainsbridge@gmail.com> | 2016-07-10 02:18:37 +1000 |
commit | 95ba43916f5e7e3421adf2629b3eae5fe63fe5de (patch) | |
tree | d1f28bcbcedd7882db71b4f39980140f020a44e6 | |
parent | 7a6efaaf3d074dd2c707537089e0c24356ce5790 (diff) |
Improve performance of automation range moves.
-rw-r--r-- | libs/ardour/diskstream.cc | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libs/ardour/diskstream.cc b/libs/ardour/diskstream.cc index 3ca463189c..6eac0c1cd9 100644 --- a/libs/ardour/diskstream.cc +++ b/libs/ardour/diskstream.cc @@ -568,7 +568,9 @@ Diskstream::playlist_ranges_moved (list< Evoral::RangeMove<framepos_t> > const & continue; } boost::shared_ptr<AutomationList> alist = ac->alist(); - + if (!alist->size()) { + continue; + } XMLNode & before = alist->get_state (); bool const things_moved = alist->move_ranges (movements); if (things_moved) { @@ -598,6 +600,9 @@ Diskstream::move_processor_automation (boost::weak_ptr<Processor> p, list< Evora for (set<Evoral::Parameter>::const_iterator i = a.begin (); i != a.end (); ++i) { boost::shared_ptr<AutomationList> al = processor->automation_control(*i)->alist(); + if (!al->size()) { + continue; + } XMLNode & before = al->get_state (); bool const things_moved = al->move_ranges (movements); if (things_moved) { |