diff options
author | David Robillard <d@drobilla.net> | 2007-10-02 20:56:42 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2007-10-02 20:56:42 +0000 |
commit | 008d216a99dc387c234de544bb10de32aa70d175 (patch) | |
tree | addafd66888098eb6a7a70a97a19729435e5f50e | |
parent | d130806ade2b9bb404e1267262ca4859c15c01a0 (diff) | |
download | ingen-008d216a99dc387c234de544bb10de32aa70d175.tar.gz ingen-008d216a99dc387c234de544bb10de32aa70d175.tar.bz2 ingen-008d216a99dc387c234de544bb10de32aa70d175.zip |
Graceful shutdown on Ctrl+C (hopefully?).
git-svn-id: http://svn.drobilla.net/lad/ingen@802 a436a847-0d15-0410-975c-d299462d15a1
-rw-r--r-- | src/libs/engine/Engine.cpp | 13 | ||||
-rw-r--r-- | src/libs/gui/Connection.hpp | 6 |
2 files changed, 9 insertions, 10 deletions
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<FlowCanvas::Canvas> canvas, - boost::shared_ptr<ConnectionModel> model, + Connection(boost::shared_ptr<FlowCanvas::Canvas> canvas, + boost::shared_ptr<ConnectionModel> model, boost::shared_ptr<FlowCanvas::Connectable> src, boost::shared_ptr<FlowCanvas::Connectable> dst, - uint32_t color) + uint32_t color) : FlowCanvas::Connection(canvas, src, dst, color) , _connection_model(model) {} |