Patch from colinf to fix auto-connect of bus outputs (#4758).

git-svn-id: svn://localhost/ardour2/branches/3.0@11615 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Carl Hetherington 2012-03-07 13:24:20 +00:00
parent 5d82179323
commit 09814ab840
3 changed files with 11 additions and 11 deletions

View file

@ -1224,7 +1224,7 @@ class Session : public PBD::StatefulDestructible, public PBD::ScopedConnectionLi
SerializedRCUManager<RouteList> routes;
void add_routes (RouteList&, bool auto_connect, bool save);
void add_routes (RouteList&, bool input_auto_connect, bool output_auto_connect, bool save);
uint32_t destructive_index;
boost::shared_ptr<Route> XMLRouteFactory (const XMLNode&, int);

View file

@ -673,7 +673,7 @@ Session::add_monitor_section ()
}
rl.push_back (r);
add_routes (rl, false, false);
add_routes (rl, false, false, false);
assert (_monitor_out);
@ -1646,7 +1646,7 @@ Session::new_midi_track (boost::shared_ptr<PluginInfo> instrument, TrackMode mod
failed:
if (!new_routes.empty()) {
add_routes (new_routes, true, true);
add_routes (new_routes, true, true, true);
if (instrument) {
for (RouteList::iterator r = new_routes.begin(); r != new_routes.end(); ++r) {
@ -1889,7 +1889,7 @@ Session::new_audio_track (int input_channels, int output_channels, TrackMode mod
failed:
if (!new_routes.empty()) {
add_routes (new_routes, true, true);
add_routes (new_routes, true, true, true);
}
return ret;
@ -2001,7 +2001,7 @@ Session::new_audio_route (int input_channels, int output_channels, RouteGroup* r
failure:
if (!ret.empty()) {
add_routes (ret, false, true);
add_routes (ret, false, true, true); // autoconnect outputs only
}
return ret;
@ -2100,7 +2100,7 @@ Session::new_route_from_template (uint32_t how_many, const std::string& template
out:
if (!ret.empty()) {
add_routes (ret, true, true);
add_routes (ret, true, true, true);
IO::enable_connecting ();
}
@ -2108,7 +2108,7 @@ Session::new_route_from_template (uint32_t how_many, const std::string& template
}
void
Session::add_routes (RouteList& new_routes, bool auto_connect, bool save)
Session::add_routes (RouteList& new_routes, bool input_auto_connect, bool output_auto_connect, bool save)
{
ChanCount existing_inputs;
ChanCount existing_outputs;
@ -2165,8 +2165,8 @@ Session::add_routes (RouteList& new_routes, bool auto_connect, bool save)
}
}
if (auto_connect) {
auto_connect_route (r, existing_inputs, existing_outputs, true);
if (input_auto_connect || output_auto_connect) {
auto_connect_route (r, existing_inputs, existing_outputs, true, input_auto_connect);
}
}

View file

@ -605,7 +605,7 @@ Session::create (const string& session_template, BusProfile* bus_profile)
}
if (!rl.empty()) {
add_routes (rl, false, false);
add_routes (rl, false, false, false);
}
/* this allows the user to override settings with an environment variable.
@ -1473,7 +1473,7 @@ Session::load_routes (const XMLNode& node, int version)
new_routes.push_back (route);
}
add_routes (new_routes, false, false);
add_routes (new_routes, false, false, false);
return 0;
}