13
0

keep processing LV2 Ringbuffer once it is allocated

Discard messages in LV2PluginUI::write_to_ui() if the
ringbuffer exists but the UI is not active.

This fixes "[ERROR]: Error writing from plugin to UI" messages
if the UI was once active but has been closed since.

This is a hotfix solution, eventually the LV2 backend should be updated
and a function LV2Plugin::disable_ui_emmission() implemented.
This commit is contained in:
Robin Gareus 2013-11-05 02:06:20 +01:00
parent e24089ec1f
commit c01e37171e

View File

@ -478,12 +478,12 @@ void
LV2PluginUI::on_window_hide()
{
//printf("LV2PluginUI::on_window_hide\n");
_message_update_connection.disconnect();
if (_lv2->is_external_ui()) {
if (!_external_ui_ptr) { return; }
LV2_EXTERNAL_UI_HIDE(_external_ui_ptr);
if (!_lv2->is_external_kx()) { return ; }
_message_update_connection.disconnect();
_screen_update_connection.disconnect();
_external_ui_ptr = NULL;
suil_instance_free((SuilInstance*)_inst);