diff options
author | Alexander Harkness <me@bearbin.net> | 2014-10-20 15:34:19 +0200 |
---|---|---|
committer | Alexander Harkness <me@bearbin.net> | 2014-10-20 15:34:19 +0200 |
commit | bf8de85fd64d193487f6bc3615747c9d1ea41ac6 (patch) | |
tree | 6fa9437a102961ff1e7884aef7f7f9dfd90d2a9f | |
parent | Merge pull request #1549 from SphinxC0re/master (diff) | |
parent | Added error message (diff) | |
download | cuberite-bf8de85fd64d193487f6bc3615747c9d1ea41ac6.tar cuberite-bf8de85fd64d193487f6bc3615747c9d1ea41ac6.tar.gz cuberite-bf8de85fd64d193487f6bc3615747c9d1ea41ac6.tar.bz2 cuberite-bf8de85fd64d193487f6bc3615747c9d1ea41ac6.tar.lz cuberite-bf8de85fd64d193487f6bc3615747c9d1ea41ac6.tar.xz cuberite-bf8de85fd64d193487f6bc3615747c9d1ea41ac6.tar.zst cuberite-bf8de85fd64d193487f6bc3615747c9d1ea41ac6.zip |
-rw-r--r-- | src/Bindings/PluginManager.cpp | 3 | ||||
-rw-r--r-- | src/Server.cpp | 11 |
2 files changed, 13 insertions, 1 deletions
diff --git a/src/Bindings/PluginManager.cpp b/src/Bindings/PluginManager.cpp index 43507a5fb..0992ccec1 100644 --- a/src/Bindings/PluginManager.cpp +++ b/src/Bindings/PluginManager.cpp @@ -1827,7 +1827,8 @@ bool cPluginManager::DoWithPlugin(const AString & a_PluginName, cPluginCallback bool cPluginManager::AddPlugin(cPlugin * a_Plugin) { - m_Plugins[a_Plugin->GetDirectory()] = a_Plugin; + m_Plugins[a_Plugin->GetDirectory()] = a_Plugin; + if (a_Plugin->Initialize()) { // Initialization OK diff --git a/src/Server.cpp b/src/Server.cpp index 8e5755a75..67315c8cf 100644 --- a/src/Server.cpp +++ b/src/Server.cpp @@ -491,6 +491,17 @@ void cServer::ExecuteConsoleCommand(const AString & a_Cmd, cCommandOutputCallbac { if (split.size() > 1) { + cPluginManager::PluginMap map = cPluginManager::Get()->GetAllPlugins(); + + for(auto plugin_entry : map) + { + if(plugin_entry.first == split[1]) + { + a_Output.Out("Error! Plugin is already loaded!"); + a_Output.Finished(); + return; + } + } a_Output.Out(cPluginManager::Get()->LoadPlugin(split[1]) ? "Plugin loaded" : "Error occurred loading plugin"); } else |