Comparison

core/modulemanager.lua @ 3588:1e570ed17147

modulemanager: Fixed: Locally defined pcall wasn't returning return values of the called function.
author Waqas Hussain <waqas20@gmail.com>
date Wed, 10 Nov 2010 05:30:46 +0500
parent 3587:d94aacb2771a
child 3595:ec1151d0c4a4
comparison
equal deleted inserted replaced
3587:d94aacb2771a 3588:1e570ed17147
32 local debug_traceback = debug.traceback; 32 local debug_traceback = debug.traceback;
33 local unpack, select = unpack, select; 33 local unpack, select = unpack, select;
34 pcall = function(f, ...) 34 pcall = function(f, ...)
35 local n = select("#", ...); 35 local n = select("#", ...);
36 local params = {...}; 36 local params = {...};
37 return xpcall(function() f(unpack(params, 1, n)) end, function(e) return tostring(e).."\n"..debug_traceback(); end); 37 return xpcall(function() return f(unpack(params, 1, n)) end, function(e) return tostring(e).."\n"..debug_traceback(); end);
38 end 38 end
39 39
40 local array, set = require "util.array", require "util.set"; 40 local array, set = require "util.array", require "util.set";
41 41
42 local autoload_modules = {"presence", "message", "iq"}; 42 local autoload_modules = {"presence", "message", "iq"};