Browse Source

confenv: fix possible crash

pull/169/head
aler9 5 years ago
parent
commit
14efc103ba
  1. 10
      confenv/confenv.go

10
confenv/confenv.go vendored

@ -70,12 +70,16 @@ func process(env map[string]string, envKey string, rv reflect.Value) error {
case reflect.Map: case reflect.Map:
for k := range env { for k := range env {
if !strings.HasPrefix(k, envKey) { if !strings.HasPrefix(k, envKey+"_") {
continue continue
} }
tmp := strings.Split(strings.TrimPrefix(k[len(envKey):], "_"), "_") tmp := strings.Split(k[len(envKey+"_"):], "_")
mapKey := strings.ToLower(tmp[0]) mapKey := tmp[0]
if len(mapKey) == 0 {
continue
}
mapKey = strings.ToLower(mapKey)
nv := rv.MapIndex(reflect.ValueOf(mapKey)) nv := rv.MapIndex(reflect.ValueOf(mapKey))
zero := reflect.Value{} zero := reflect.Value{}

Loading…
Cancel
Save