diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2015-09-10 11:35:25 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2015-09-10 11:35:57 -0400 |
commit | 0ef8175b5a74bb6748900459efe086ab8eaf16f6 (patch) | |
tree | 0aeb724e679a982478f60008fd26e0618cf2b104 | |
parent | cb85080ca8e8a1f23cd9017587fe48a66c442274 (diff) |
when removing routes, don't do potentially expensive work once for each route.
We can update solo state and tell interested parties about the removal once the actual removal is done
-rw-r--r-- | libs/ardour/session.cc | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index 94a12ca504..c3eca166df 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -3376,8 +3376,6 @@ Session::remove_routes (boost::shared_ptr<RouteList> routes_to_remove) _monitor_out.reset (); } - update_route_solo_state (); - // We need to disconnect the route's inputs and outputs (*iter)->input()->disconnect (0); @@ -3408,14 +3406,14 @@ Session::remove_routes (boost::shared_ptr<RouteList> routes_to_remove) _step_editors--; } } - - RouteAddedOrRemoved (false); /* EMIT SIGNAL */ } /* writer goes out of scope, forces route list update */ } // end of RCU Writer scope + update_route_solo_state (); + RouteAddedOrRemoved (false); /* EMIT SIGNAL */ update_latency_compensation (); set_dirty(); |