X-Git-Url: https://git.enpas.org/?a=blobdiff_plain;f=core%2Fmodulemanager.lua;h=5afe31440cb4395add4355b8f0a6bc151196df94;hb=1552206d5c540734f05cf90fa3a124940568196b;hp=8292eaa5d0d4147ce92cab7cad93fb1aecf3b981;hpb=3880c7911b06b10a19ae6c10f8246174f42c5d9f;p=prosody.git diff --git a/core/modulemanager.lua b/core/modulemanager.lua index 8292eaa5..5afe3144 100644 --- a/core/modulemanager.lua +++ b/core/modulemanager.lua @@ -1,20 +1,9 @@ --- Prosody IM v0.2 --- Copyright (C) 2008 Matthew Wild --- Copyright (C) 2008 Waqas Hussain +-- Prosody IM v0.3 +-- Copyright (C) 2008-2009 Matthew Wild +-- Copyright (C) 2008-2009 Waqas Hussain -- --- This program is free software; you can redistribute it and/or --- modify it under the terms of the GNU General Public License --- as published by the Free Software Foundation; either version 2 --- of the License, or (at your option) any later version. --- --- This program is distributed in the hope that it will be useful, --- but WITHOUT ANY WARRANTY; without even the implied warranty of --- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the --- GNU General Public License for more details. --- --- You should have received a copy of the GNU General Public License --- along with this program; if not, write to the Free Software --- Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. +-- This project is MIT/X11 licensed. Please see the +-- COPYING file in the source package for more information. -- @@ -101,7 +90,9 @@ function load(host, module_name, config) if not modulemap[host] then modulemap[host] = {}; - elseif modulemap[host][module_name] then + end + + if modulemap[host][module_name] then log("warn", "%s is already loaded for %s, so not loading again", module_name, host); return nil, "module-already-loaded"; elseif modulemap["*"][module_name] then @@ -121,6 +112,7 @@ function load(host, module_name, config) local pluginenv = setmetatable({ module = api_instance }, { __index = _G }); setfenv(mod, pluginenv); + if not hosts[host] then hosts[host] = { type = "component", host = host, connected = false, s2sout = {} }; end local success, ret = pcall(mod); if not success then