diff options
-rw-r--r-- | libs/ardour/route.cc | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/libs/ardour/route.cc b/libs/ardour/route.cc index beb5bbffc2..35d5922050 100644 --- a/libs/ardour/route.cc +++ b/libs/ardour/route.cc @@ -252,7 +252,9 @@ Route::init () Glib::Threads::RWLock::WriterLock lm (_processor_lock); _processors.push_back (_amp); } - configure_processors (0); + if (!_session.loading()) { + configure_processors (0); + } } return 0; @@ -2985,7 +2987,7 @@ Route::set_processor_state (const XMLNode& node) must_configure |= find (_processors.begin(), _processors.end(), _intreturn) == _processors.end (); } - if (must_configure) { + if (must_configure && !_session.loading()) { configure_processors_unlocked (0, &lm); } @@ -3512,6 +3514,10 @@ Route::realtime_handle_transport_stopped () void Route::input_change_handler (IOChange change, void * /*src*/) { + if (_session.loading()) { + return; + } + if ((change.type & IOChange::ConfigurationChanged)) { /* This is called with the process lock held if change contains ConfigurationChanged |