fix panic resolver's configuration file does not have read permission

This commit is contained in:
Rene Zbinden
2021-04-13 14:45:20 +02:00
committed by Alec Thomas
parent d4dd709445
commit 5fd7249c69
+8 -1
View File
@@ -329,9 +329,16 @@ func Configuration(loader ConfigurationLoader, paths ...string) Option {
return OptionFunc(func(k *Kong) error { return OptionFunc(func(k *Kong) error {
k.loader = loader k.loader = loader
for _, path := range paths { for _, path := range paths {
if _, err := os.Stat(ExpandPath(path)); os.IsNotExist(err) { f, err := os.Open(ExpandPath(path))
if err != nil {
if os.IsNotExist(err) || os.IsPermission(err) {
continue continue
} }
return err
}
f.Close()
resolver, err := k.LoadConfig(path) resolver, err := k.LoadConfig(path)
if err != nil { if err != nil {
return errors.Wrap(err, path) return errors.Wrap(err, path)