summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--libs/ardour/session.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index 06d19672b9..b5853d38b4 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -3613,7 +3613,10 @@ Session::remove_routes (boost::shared_ptr<RouteList> routes_to_remove)
continue;
}
- (*iter)->solo_control()->set_value (0.0, Controllable::NoGroup);
+ /* speed up session deletion, don't do the solo dance */
+ if (0 == _state_of_the_state & Deletion) {
+ (*iter)->solo_control()->set_value (0.0, Controllable::NoGroup);
+ }
rs->remove (*iter);