X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=gtk2_ardour%2Fwindows_vst_plugin_ui.cc;h=7f1481998606455daab0eec2d6e2a525a01240d5;hb=cef341631b55526e4b2bad940064491922c07701;hp=45111f840d00b82c0f751e4778564f52a1e6109c;hpb=23e7cf10191270d70357ccf0ed9294f020c7b7ab;p=ardour.git diff --git a/gtk2_ardour/windows_vst_plugin_ui.cc b/gtk2_ardour/windows_vst_plugin_ui.cc index 45111f840d..7f14819986 100644 --- a/gtk2_ardour/windows_vst_plugin_ui.cc +++ b/gtk2_ardour/windows_vst_plugin_ui.cc @@ -17,10 +17,10 @@ */ -#include #include #include #include +#include #include "ardour/plugin_insert.h" #include "ardour/windows_vst_plugin.h" @@ -58,6 +58,8 @@ WindowsVSTPluginUI::WindowsVSTPluginUI (boost::shared_ptr pi, boos WindowsVSTPluginUI::~WindowsVSTPluginUI () { + fst_destroy_editor (_vst->state()); + // plugin destructor destroys the custom GUI, via Windows fun-and-games, // and then our PluginUIWindow does the rest } @@ -86,10 +88,10 @@ WindowsVSTPluginUI::forward_key_event (GdkEventKey* ev) /* buffer full */ return; } - + int special_windows_key = 0; int character_windows_key = 0; - + switch (ev->keyval) { case GDK_Left: special_windows_key = 0x25; @@ -111,11 +113,11 @@ WindowsVSTPluginUI::forward_key_event (GdkEventKey* ev) character_windows_key = ev->keyval; break; } - + fst->pending_keys[fst->n_pending_keys].special = special_windows_key; fst->pending_keys[fst->n_pending_keys].character = character_windows_key; fst->n_pending_keys++; - + pthread_mutex_unlock (&fst->lock); }