diff --git a/libs/ardour/vst3_plugin.cc b/libs/ardour/vst3_plugin.cc index 89311127d4..a588b298cc 100644 --- a/libs/ardour/vst3_plugin.cc +++ b/libs/ardour/vst3_plugin.cc @@ -2688,6 +2688,11 @@ VST3PI::load_state (RAMStream& stream) } PBD::Unwinder uw (_is_loading_state, true); + bool was_active = _is_processing; + + if (!deactivate ()) { + DEBUG_TRACE (DEBUG::VST3Config, "VST3PI::load_state failed to deactivate plugin\n"); + } int32 count; stream.read_int32 (count); @@ -2757,6 +2762,10 @@ VST3PI::load_state (RAMStream& stream) synced = synchronize_states (); } + if (was_active) { + activate (); + } + if (rv && synced) { update_shadow_data (); }