Config loader returns error instead of directly panic (#80)

This commit is contained in:
Jim Han 2020-12-16 20:35:27 +08:00 committed by GitHub
parent fe445f8e1a
commit 19ce0e99a5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 7 additions and 3 deletions

View File

@ -22,9 +22,13 @@ func init() {
for i, arg := range v { for i, arg := range v {
newError("Reading config: ", arg).AtInfo().WriteToLog() newError("Reading config: ", arg).AtInfo().WriteToLog()
r, err := confloader.LoadConfig(arg) r, err := confloader.LoadConfig(arg)
common.Must(err) if err != nil {
return nil, newError("failed to read config: ", arg).Base(err)
}
c, err := serial.DecodeJSONConfig(r) c, err := serial.DecodeJSONConfig(r)
common.Must(err) if err != nil {
return nil, newError("failed to decode config: ", arg).Base(err)
}
if i == 0 { if i == 0 {
// This ensure even if the muti-json parser do not support a setting, // This ensure even if the muti-json parser do not support a setting,
// It is still respected automatically for the first configure file // It is still respected automatically for the first configure file

View File

@ -164,7 +164,7 @@ func startXray() (core.Server, error) {
config, err := core.LoadConfig(getConfigFormat(), configFiles[0], configFiles) config, err := core.LoadConfig(getConfigFormat(), configFiles[0], configFiles)
if err != nil { if err != nil {
return nil, newError("failed to read config files: [", configFiles.String(), "]").Base(err) return nil, newError("failed to load config files: [", configFiles.String(), "]").Base(err)
} }
server, err := core.New(config) server, err := core.New(config)