summaryrefslogtreecommitdiffstats
path: root/src/client
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2010-03-06 20:13:15 +0000
committerDavid Robillard <d@drobilla.net>2010-03-06 20:13:15 +0000
commit7ee402686e0e44101819150230dcddcc22699b52 (patch)
tree515428354d7008a27c12cddf262848f2a89ced9c /src/client
parent059f20c9666234f2be01498ee04f1e7ee795ba8f (diff)
downloadingen-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
Diffstat (limited to 'src/client')
-rw-r--r--src/client/PluginUI.cpp6
1 files changed, 4 insertions, 2 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);
+ }
}