config: fix option parsing for bcoin-cli.

This commit is contained in:
Christopher Jeffrey 2016-11-02 01:01:08 -07:00
parent 4ca5ad3824
commit ace4c89391
No known key found for this signature in database
GPG Key ID: 8962AB9DE6666BBD

View File

@ -45,6 +45,7 @@ config.alias = {
config.parse = function parse(options) {
var data = {};
var raw = {};
var arg, conf, prefix, filename, dirname;
if (!options)
@ -54,16 +55,19 @@ config.parse = function parse(options) {
if (options.env) {
arg = config.parseEnv();
merge(raw, arg.data);
merge(data, arg);
}
if (options.arg) {
arg = config.parseArg();
merge(raw, arg.data);
merge(data, arg);
}
if (options.query) {
arg = config.parseQuery();
merge(raw, arg.data);
merge(data, arg);
}
@ -76,6 +80,7 @@ config.parse = function parse(options) {
dirname = utils.normalize(filename, true);
conf = config.readConfig(filename, prefix, dirname);
raw = merge(conf.data, raw);
data = merge(conf, data);
prefix = config.getPrefix(data);
@ -91,6 +96,8 @@ config.parse = function parse(options) {
}
}
data.data = raw;
// Force fast properties
// after all those merges.
utils.fastProp(data);