summaryrefslogtreecommitdiffstats
path: root/src/progs/ingenuity/PatchCanvas.cpp
diff options
context:
space:
mode:
authorDavid Robillard <d@drobilla.net>2007-01-14 23:39:25 +0000
committerDavid Robillard <d@drobilla.net>2007-01-14 23:39:25 +0000
commit8d20b981fa997d3a7f79fcb6f2120095949873a0 (patch)
tree722c8359ac6c11b7da341dac824d912c6e46bfd5 /src/progs/ingenuity/PatchCanvas.cpp
parenta8fafe5adeb6f1782b40d1766d4cb1cf9c3f89d9 (diff)
downloadingen-8d20b981fa997d3a7f79fcb6f2120095949873a0.tar.gz
ingen-8d20b981fa997d3a7f79fcb6f2120095949873a0.tar.bz2
ingen-8d20b981fa997d3a7f79fcb6f2120095949873a0.zip
Fixed launching of external ingen process from ingenuity.
git-svn-id: http://svn.drobilla.net/lad/ingen@259 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/progs/ingenuity/PatchCanvas.cpp')
-rw-r--r--src/progs/ingenuity/PatchCanvas.cpp8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/progs/ingenuity/PatchCanvas.cpp b/src/progs/ingenuity/PatchCanvas.cpp
index d305e9c3..056d25a6 100644
--- a/src/progs/ingenuity/PatchCanvas.cpp
+++ b/src/progs/ingenuity/PatchCanvas.cpp
@@ -314,7 +314,13 @@ PatchCanvas::destroy_selection()
{
for (list<boost::shared_ptr<Module> >::iterator m = m_selected_modules.begin(); m != m_selected_modules.end(); ++m) {
boost::shared_ptr<NodeModule> module = boost::dynamic_pointer_cast<NodeModule>(*m);
- App::instance().engine()->destroy(module->node()->path());
+ if (module) {
+ App::instance().engine()->destroy(module->node()->path());
+ } else {
+ boost::shared_ptr<PatchPortModule> port_module = boost::dynamic_pointer_cast<PatchPortModule>(*m);
+ if (port_module)
+ App::instance().engine()->destroy(port_module->port()->path());
+ }
}
}