Software /
code /
prosody
Changeset
793:55add3b87c01
Report errors in the config file to the user
author | Matthew Wild <mwild1@gmail.com> |
---|---|
date | Fri, 13 Feb 2009 14:37:15 +0000 |
parents | 792:57c793b1575f |
children | 794:912dc389935a |
files | core/configmanager.lua prosody |
diffstat | 2 files changed, 17 insertions(+), 9 deletions(-) [+] |
line wrap: on
line diff
--- a/core/configmanager.lua Fri Feb 13 10:54:25 2009 +0000 +++ b/core/configmanager.lua Fri Feb 13 14:37:15 2009 +0000 @@ -68,15 +68,15 @@ if f then local ok, err = parsers[format].load(f:read("*a")); f:close(); - return ok, err; + return ok, "parser", err; end - return f, err; + return f, "file", err; end if not format then - return nil, "no parser specified"; + return nil, "file", "no parser specified"; else - return nil, "no parser for "..(format); + return nil, "file", "no parser for "..(format); end end
--- a/prosody Fri Feb 13 10:54:25 2009 +0000 +++ b/prosody Fri Feb 13 14:37:15 2009 +0000 @@ -40,17 +40,25 @@ do -- TODO: Check for other formats when we add support for them -- Use lfs? Make a new conf/ dir? - local ok, err = config.load((CFG_CONFIGDIR or ".").."/prosody.cfg.lua"); + local ok, level, err = config.load((CFG_CONFIGDIR or ".").."/prosody.cfg.lua"); if not ok then print(""); print("**************************"); - print("Prosody was unable to find the configuration file."); - print("We looked for: "..(CFG_CONFIGDIR or ".").."/prosody.cfg.lua"); - print("A sample config file is included in the Prosody download called prosody.cfg.lua.dist"); - print("Copy or rename it to prosody.cfg.lua and edit as necessary."); + if level == "parser" then + print("A problem occured while reading the config file "..(CFG_CONFIGDIR or ".").."/prosody.cfg.lua"); + local err_line, err_message = tostring(err):match("%[string .-%]:(%d*): (.*)"); + print("Error"..(err_line and (" on line "..err_line) or "")..": "..(err_message or tostring(err))); + print(""); + elseif level == "file" then + print("Prosody was unable to find the configuration file."); + print("We looked for: "..(CFG_CONFIGDIR or ".").."/prosody.cfg.lua"); + print("A sample config file is included in the Prosody download called prosody.cfg.lua.dist"); + print("Copy or rename it to prosody.cfg.lua and edit as necessary."); + end print("More help on configuring Prosody can be found at http://prosody.im/doc/configure"); print("Good luck!"); print("**************************"); + print(""); os.exit(1); end end