# HG changeset patch # User Matthew Wild # Date 1227418997 0 # Node ID de4fa6f3cccfaf5714f9eab21a444ae829bda403 # Parent 79bd7a3e906c85671a74526607e4f1069fd5b28a Backed out changeset 79bd7a3e906c diff -r 79bd7a3e906c -r de4fa6f3cccf core/modulemanager.lua --- a/core/modulemanager.lua Sun Nov 23 05:14:37 2008 +0000 +++ b/core/modulemanager.lua Sun Nov 23 05:43:17 2008 +0000 @@ -78,7 +78,7 @@ local success, ret = pcall(mod); if not success then log("error", "Error initialising module '%s': %s", name or "nil", ret or "nil"); - return nil, ret; + return nil, err; end return true; end @@ -92,15 +92,15 @@ if child then local xmlns = child.attr.xmlns or xmlns; log("debug", "Stanza of type %s from %s has xmlns: %s", name, origin_type, xmlns); - local handler = handlers[origin_type][name][xmlns]; - if handler then + local handler = handlers[origin_type][name] and handlers[origin_type][name][xmlns]; + if handler then log("debug", "Passing stanza to mod_%s", handler_info[handler].name); return handler(origin, stanza) or true; end end elseif handlers[origin_type] then local handler = handlers[origin_type][name]; - if handler then + if handler then handler = handler[xmlns]; if handler then log("debug", "Passing stanza to mod_%s", handler_info[handler].name);