diff options
author | David Robillard <d@drobilla.net> | 2012-08-12 04:53:15 +0000 |
---|---|---|
committer | David Robillard <d@drobilla.net> | 2012-08-12 04:53:15 +0000 |
commit | e49cb96073f514edbe1b7a9854b49c47af35463c (patch) | |
tree | a20d32b572f8c28cba950ba53e9d0c595cf0b6c7 /src/server/NodeFactory.cpp | |
parent | f1440f1247d71a4867a50eede068730743eb8e09 (diff) | |
download | ingen-e49cb96073f514edbe1b7a9854b49c47af35463c.tar.gz ingen-e49cb96073f514edbe1b7a9854b49c47af35463c.tar.bz2 ingen-e49cb96073f514edbe1b7a9854b49c47af35463c.zip |
Fix memory leaks.
git-svn-id: http://svn.drobilla.net/lad/trunk/ingen@4667 a436a847-0d15-0410-975c-d299462d15a1
Diffstat (limited to 'src/server/NodeFactory.cpp')
-rw-r--r-- | src/server/NodeFactory.cpp | 20 |
1 files changed, 3 insertions, 17 deletions
diff --git a/src/server/NodeFactory.cpp b/src/server/NodeFactory.cpp index 616a1b35..1544b98b 100644 --- a/src/server/NodeFactory.cpp +++ b/src/server/NodeFactory.cpp @@ -57,9 +57,11 @@ NodeFactory::~NodeFactory() const NodeFactory::Plugins& NodeFactory::plugins() { + ThreadManager::assert_thread(THREAD_PRE_PROCESS); if (!_has_loaded) { // TODO: Plugin list refreshing - load_plugins(); + load_lv2_plugins(); + _has_loaded = true; } return _plugins; } @@ -73,22 +75,6 @@ NodeFactory::plugin(const Raul::URI& uri) } void -NodeFactory::load_plugins() -{ - ThreadManager::assert_thread(THREAD_PRE_PROCESS); - - // Only load if we havn't already, so every client connecting doesn't cause - // this (expensive!) stuff to happen. Not the best solution - would be nice - // if clients could refresh plugins list for whatever reason :/ - if (!_has_loaded) { - _plugins.clear(); - load_internal_plugins(); - load_lv2_plugins(); - _has_loaded = true; - } -} - -void NodeFactory::load_internal_plugins() { Ingen::URIs& uris = _world->uris(); |