13
0

Revert recent auto-connect hack

..forth and back..
1882c1ba7e
dabd5715e9
fac8d84786

This needs a [much] better solution:

e.g. Wait until instrument is instantiated (ports are created),
then auto-connect, and finally fan-out
(or alternatively skip auto-connect for fanned-out tracks).

Currently both auto-connect as well as fan-out and port-creation
take place asynchronously.

Also MIDI track subscribe to &Session::midi_output_change_handler,
(MIDI busses don't).
This commit is contained in:
Robin Gareus 2020-07-18 21:59:49 +02:00
parent 4bbe6f20de
commit e4232197fe
Signed by: rgareus
GPG Key ID: A090BCE02CF57F04

View File

@ -2457,6 +2457,7 @@ Session::new_midi_track (const ChanCount& input, const ChanCount& output, bool s
failed:
if (!new_routes.empty()) {
add_routes (new_routes, true, true, order);
if (instrument) {
for (RouteList::iterator r = new_routes.begin(); r != new_routes.end(); ++r) {
@ -2480,8 +2481,6 @@ Session::new_midi_track (const ChanCount& input, const ChanCount& output, bool s
}
}
}
add_routes (new_routes, true, true, order);
}
return ret;
@ -2557,6 +2556,8 @@ Session::new_midi_route (RouteGroup* route_group, uint32_t how_many, string name
failure:
if (!ret.empty()) {
add_routes (ret, false, true, order);
if (instrument) {
for (RouteList::iterator r = ret.begin(); r != ret.end(); ++r) {
PluginPtr plugin = instrument->load (*this);
@ -2579,8 +2580,6 @@ Session::new_midi_route (RouteGroup* route_group, uint32_t how_many, string name
}
}
}
add_routes (ret, false, true, order);
}
return ret;