summaryrefslogtreecommitdiffstats
path: root/src/shared/World.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared/World.cpp')
-rw-r--r--src/shared/World.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/shared/World.cpp b/src/shared/World.cpp
index 9aa17d4f..aae321fe 100644
--- a/src/shared/World.cpp
+++ b/src/shared/World.cpp
@@ -219,6 +219,11 @@ SharedPtr<LV2URIMap> World::lv2_uri_map() { return _impl->lv2_uri_map; }
bool
World::load_module(const char* name)
{
+ Pimpl::Modules::iterator i = _impl->modules.find(name);
+ if (i != _impl->modules.end()) {
+ LOG(info) << "Module `" << name << "' already loaded" << endl;
+ return true;
+ }
SharedPtr<Glib::Module> lib = ingen_load_module(name);
Ingen::Shared::Module* (*module_load)() = NULL;
if (lib && lib->get_symbol("ingen_module_load", (void*&)module_load)) {