From 8a6b23f28ffc11e66b65b513729493d8d9c37c6b Mon Sep 17 00:00:00 2001 From: Paul Davis Date: Fri, 8 May 2015 12:48:07 -0400 Subject: [PATCH] adding routes no longer saves session but leaves it marked dirty (Tracks semantics for add_routes() retained) --- libs/ardour/session.cc | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index b24ad53b37..1ff24a8797 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -2207,7 +2207,11 @@ Session::new_midi_track (const ChanCount& input, const ChanCount& output, boost: failed: if (!new_routes.empty()) { StateProtector sp (this); - add_routes (new_routes, true, true, true); + if (Profile->get_trx()) { + add_routes (new_routes, false, false, false); + } else { + add_routes (new_routes, true, true, false); + } if (instrument) { for (RouteList::iterator r = new_routes.begin(); r != new_routes.end(); ++r) { @@ -2457,7 +2461,11 @@ Session::new_audio_track (int input_channels, int output_channels, TrackMode mod failed: if (!new_routes.empty()) { StateProtector sp (this); - add_routes (new_routes, true, true, true); + if (Profile->get_trx()) { + add_routes (new_routes, false, false, false); + } else { + add_routes (new_routes, true, true, false); + } } return ret; @@ -2543,7 +2551,11 @@ Session::new_audio_route (int input_channels, int output_channels, RouteGroup* r failure: if (!ret.empty()) { StateProtector sp (this); - add_routes (ret, false, true, true); // autoconnect outputs only + if (Profile->get_trx()) { + add_routes (ret, false, false, false); + } else { + add_routes (ret, false, true, true); // autoconnect // outputs only + } } return ret; @@ -2660,7 +2672,11 @@ Session::new_route_from_template (uint32_t how_many, const std::string& template out: if (!ret.empty()) { StateProtector sp (this); - add_routes (ret, true, true, true); + if (Profile->get_trx()) { + add_routes (ret, false, false, false); + } else { + add_routes (ret, true, true, false); + } IO::enable_connecting (); }