aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Wild <mwild1@gmail.com>2009-11-23 20:22:37 +0000
committerMatthew Wild <mwild1@gmail.com>2009-11-23 20:22:37 +0000
commitf4651d789af716615e950cb653e8f6a5b1ed0a63 (patch)
tree048670b25bcabe1bf2c794994c8e710a72ff6406
parent12c4c331afbdfd1f68734e50d58c8ece978d9b9c (diff)
parent646176d19f2024c6bee3f0a4922ee054e36961bb (diff)
downloadprosody-f4651d789af716615e950cb653e8f6a5b1ed0a63.tar.gz
prosody-f4651d789af716615e950cb653e8f6a5b1ed0a63.zip
Merge with trunk
-rwxr-xr-xprosody22
1 files changed, 21 insertions, 1 deletions
diff --git a/prosody b/prosody
index 8dd37f30..7f69e085 100755
--- a/prosody
+++ b/prosody
@@ -58,7 +58,27 @@ config = require "core.configmanager"
function read_config()
-- TODO: Check for other formats when we add support for them
-- Use lfs? Make a new conf/ dir?
- local ok, level, err = config.load((CFG_CONFIGDIR or ".").."/prosody.cfg.lua");
+ local filenames = {};
+
+ local filename;
+ if arg[1] == "--config" and arg[2] then
+ table.insert(filenames, arg[2]);
+ if CFG_CONFIGDIR then
+ table.insert(filenames, CFG_CONFIGDIR.."/"..arg[2]);
+ end
+ else
+ table.insert(filenames, (CFG_CONFIGDIR or ".").."/prosody.cfg.lua");
+ end
+ for _,_filename in ipairs(filenames) do
+ filename = _filename;
+ local file = io.open(filename);
+ if file then
+ file:close();
+ CFG_CONFIGDIR = filename:match("^(.*)[\\/][^\\/]*$");
+ break;
+ end
+ end
+ local ok, level, err = config.load(filename);
if not ok then
print("\n");
print("**************************");