remove midi_interpolation member of DiskIOProcessor (was used only to call ::distance...
[ardour.git] / libs / ardour / windows_vst_plugin.cc
index 256d7f89a8bb13ee2fbf17bc4cbb0c81fbef1b55..4bfe8226459699f67c921262bf8a01c8a3a517f1 100644 (file)
@@ -39,9 +39,10 @@ WindowsVSTPlugin::WindowsVSTPlugin (AudioEngine& e, Session& session, VSTHandle*
        if ((_state = fst_instantiate (_handle, Session::vst_callback, this)) == 0) {
                throw failed_constructor();
        }
+       open_plugin ();
        Session::vst_current_loading_id = 0;
 
-       set_plugin (_state->plugin);
+       init_plugin ();
 }
 
 WindowsVSTPlugin::WindowsVSTPlugin (const WindowsVSTPlugin &other)
@@ -53,15 +54,15 @@ WindowsVSTPlugin::WindowsVSTPlugin (const WindowsVSTPlugin &other)
        if ((_state = fst_instantiate (_handle, Session::vst_callback, this)) == 0) {
                throw failed_constructor();
        }
+       open_plugin ();
        Session::vst_current_loading_id = 0;
 
-       _plugin = _state->plugin;
-
        XMLNode* root = new XMLNode (other.state_node_name ());
-       LocaleGuard lg;
        other.add_state (root);
        set_state (*root, Stateful::loading_state_version);
        delete root;
+
+       init_plugin ();
 }
 
 WindowsVSTPlugin::~WindowsVSTPlugin ()