Fix all-tracks-soloed on session reload in PFL/AFL (#3791).
git-svn-id: svn://localhost/ardour2/branches/3.0@8929 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
458925dba5
commit
0146b3ab88
@ -2363,7 +2363,6 @@ Route::set_processor_state (const XMLNode& node)
|
||||
if (prop->value() == "intsend") {
|
||||
|
||||
processor.reset (new InternalSend (_session, _pannable, _mute_master, boost::shared_ptr<Route>(), Delivery::Role (0)));
|
||||
|
||||
} else if (prop->value() == "ladspa" || prop->value() == "Ladspa" ||
|
||||
prop->value() == "lv2" ||
|
||||
prop->value() == "vst" ||
|
||||
@ -2389,6 +2388,14 @@ Route::set_processor_state (const XMLNode& node)
|
||||
processor.reset (new UnknownProcessor (_session, **niter));
|
||||
}
|
||||
|
||||
/* we have to note the monitor send here, otherwise a new one will be created
|
||||
and the state of this one will be lost.
|
||||
*/
|
||||
boost::shared_ptr<InternalSend> isend = boost::dynamic_pointer_cast<InternalSend> (processor);
|
||||
if (isend && isend->role() == Delivery::Listen) {
|
||||
_monitor_send = isend;
|
||||
}
|
||||
|
||||
/* it doesn't matter if invisible processors are added here, as they
|
||||
will be sorted out by setup_invisible_processors () shortly.
|
||||
*/
|
||||
@ -2493,7 +2500,7 @@ Route::remove_send_from_internal_return (InternalSend* send)
|
||||
}
|
||||
}
|
||||
|
||||
/** Add a monitor send, if we don't already have one */
|
||||
/** Add a monitor send (if we don't already have one) but don't activate it */
|
||||
int
|
||||
Route::listen_via_monitor ()
|
||||
{
|
||||
@ -2503,7 +2510,6 @@ Route::listen_via_monitor ()
|
||||
/* make sure we have one */
|
||||
if (!_monitor_send) {
|
||||
_monitor_send.reset (new InternalSend (_session, _pannable, _mute_master, _session.monitor_out(), Delivery::Listen));
|
||||
_monitor_send->activate ();
|
||||
_monitor_send->set_display_to_user (false);
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user