diff options
author | Matthew Wild <mwild1@gmail.com> | 2018-10-26 19:32:00 +0100 |
---|---|---|
committer | Matthew Wild <mwild1@gmail.com> | 2018-10-26 19:32:00 +0100 |
commit | f5f6460b2eab9d8cdd1de3231a5770bedd7e34f9 (patch) | |
tree | 0eff02506e6364d1dcb5c71b2edaacd6662ffe20 /core | |
parent | 1454ac8208cfb734d1ae90dd89c442b6be9f9598 (diff) | |
download | prosody-f5f6460b2eab9d8cdd1de3231a5770bedd7e34f9.tar.gz prosody-f5f6460b2eab9d8cdd1de3231a5770bedd7e34f9.zip |
Many things: switch from hacky multi-arg xpcall implementations to a standard util.xpcall
Diffstat (limited to 'core')
-rw-r--r-- | core/modulemanager.lua | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/core/modulemanager.lua b/core/modulemanager.lua index 81c28aa0..63b5e177 100644 --- a/core/modulemanager.lua +++ b/core/modulemanager.lua @@ -18,18 +18,13 @@ local api = require "core.moduleapi"; -- Module API container local prosody = prosody; local hosts = prosody.hosts; -local xpcall = xpcall; +local xpcall = require "util.xpcall".xpcall; local setmetatable, rawget = setmetatable, rawget; local ipairs, pairs, type, tostring, t_insert = ipairs, pairs, type, tostring, table.insert; local debug_traceback = debug.traceback; local select = select; local unpack = table.unpack or unpack; --luacheck: ignore 113 -local pcall = function(f, ...) - local n = select("#", ...); - local params = {...}; - return xpcall(function() return f(unpack(params, 1, n)) end, function(e) return tostring(e).."\n"..debug_traceback(); end); -end local autoload_modules = {prosody.platform, "presence", "message", "iq", "offline", "c2s", "s2s", "s2s_auth_certs"}; local component_inheritable_modules = {"tls", "saslauth", "dialback", "iq", "s2s"}; @@ -183,7 +178,7 @@ local function do_load_module(host, module_name, state) api_instance.path = err; modulemap[host][module_name] = pluginenv; - local ok, err = pcall(mod); + local ok, err = xpcall(mod, debug.traceback); if ok then -- Call module's "load" if module_has_method(pluginenv, "load") then |