From 008d216a99dc387c234de544bb10de32aa70d175 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Tue, 2 Oct 2007 20:56:42 +0000 Subject: Graceful shutdown on Ctrl+C (hopefully?). git-svn-id: http://svn.drobilla.net/lad/ingen@802 a436a847-0d15-0410-975c-d299462d15a1 --- src/libs/engine/Engine.cpp | 13 ++++++------- src/libs/gui/Connection.hpp | 6 +++--- 2 files changed, 9 insertions(+), 10 deletions(-) (limited to 'src/libs') diff --git a/src/libs/engine/Engine.cpp b/src/libs/engine/Engine.cpp index afbd8db1..382e2b8d 100644 --- a/src/libs/engine/Engine.cpp +++ b/src/libs/engine/Engine.cpp @@ -81,20 +81,16 @@ Engine::~Engine() if ( ! i->second->parent()) delete i->second; } - - _event_source.reset(); - _audio_driver.reset(); - + delete _object_store; delete _broadcaster; delete _node_factory; - delete _midi_driver; delete _osc_driver; delete _post_processor; //delete _lash_driver; delete _maid; - + munlockall(); } @@ -256,8 +252,11 @@ Engine::deactivate() if ((*i)->as_node() != NULL && (*i)->as_node()->parent() == NULL) (*i)->as_node()->deactivate();*/ - if (_midi_driver != NULL) + if (_midi_driver != NULL) { _midi_driver->deactivate(); + delete _midi_driver; + _midi_driver = NULL; + } _audio_driver->deactivate(); diff --git a/src/libs/gui/Connection.hpp b/src/libs/gui/Connection.hpp index b6ad070c..f6072068 100644 --- a/src/libs/gui/Connection.hpp +++ b/src/libs/gui/Connection.hpp @@ -36,11 +36,11 @@ namespace GUI { class Connection : public FlowCanvas::Connection { public: - Connection(boost::shared_ptr canvas, - boost::shared_ptr model, + Connection(boost::shared_ptr canvas, + boost::shared_ptr model, boost::shared_ptr src, boost::shared_ptr dst, - uint32_t color) + uint32_t color) : FlowCanvas::Connection(canvas, src, dst, color) , _connection_model(model) {} -- cgit v1.2.1