Allow to call set_state() on existing routes
Delaylines are not saved in the XML and internal-return is an invisible processor not explicitly re-added when the state is restored. They are [re]inserted during Route::setup_invisible_processors(). So this method need to be called after restoring processor state (indirectly via configure_processors_unlocked as needed). PS. During route creation this call happens explicitly and on session load hookup_io() -> Route::output_change_handler() implicitly sets this up.
This commit is contained in:
parent
2bfe0c6ff7
commit
883ee9c2a0
@ -2969,6 +2969,13 @@ Route::set_processor_state (const XMLNode& node)
|
||||
*/
|
||||
_processors = new_order;
|
||||
|
||||
if (_delayline) {
|
||||
must_configure |= find (_processors.begin(), _processors.end(), _delayline) == _processors.end ();
|
||||
}
|
||||
if (_intreturn) {
|
||||
must_configure |= find (_processors.begin(), _processors.end(), _intreturn) == _processors.end ();
|
||||
}
|
||||
|
||||
if (must_configure) {
|
||||
configure_processors_unlocked (0, &lm);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user