diff options
author | David Robillard <d@drobilla.net> | 2010-03-06 20:13:15 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2010-03-06 20:13:15 +0000 |
commit | 7ee402686e0e44101819150230dcddcc22699b52 (patch) | |
tree | 515428354d7008a27c12cddf262848f2a89ced9c | |
parent | 059f20c9666234f2be01498ee04f1e7ee795ba8f (diff) | |
download | ingen-7ee402686e0e44101819150230dcddcc22699b52.tar.gz ingen-7ee402686e0e44101819150230dcddcc22699b52.tar.bz2 ingen-7ee402686e0e44101819150230dcddcc22699b52.zip |
Fix deadlock when LV2 GUIs fail to instantiate (fix ticket #491).
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@2534 a436a847-0d15-0410-975c-d299462d15a1
-rw-r--r-- | src/client/PluginUI.cpp | 6 | ||||
-rw-r--r-- | src/gui/NodeModule.cpp | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/client/PluginUI.cpp b/src/client/PluginUI.cpp index b19211e6..097ba1b0 100644 --- a/src/client/PluginUI.cpp +++ b/src/client/PluginUI.cpp @@ -109,8 +109,10 @@ PluginUI::PluginUI(Ingen::Shared::World* world, PluginUI::~PluginUI() { - Glib::Mutex::Lock lock(PluginModel::rdf_world()->mutex()); - slv2_ui_instance_free(_instance); + if (_instance) { + Glib::Mutex::Lock lock(PluginModel::rdf_world()->mutex()); + slv2_ui_instance_free(_instance); + } } diff --git a/src/gui/NodeModule.cpp b/src/gui/NodeModule.cpp index a2db6f83..853bdf03 100644 --- a/src/gui/NodeModule.cpp +++ b/src/gui/NodeModule.cpp @@ -328,7 +328,7 @@ NodeModule::popup_gui() return true; } else { - warn << "No LV2 GUI for " << _node->path() << endl; + warn << "No LV2 GUI for " << _node->path().chop_scheme() << endl; } } #endif |