chore: refactor code (#1708)

This commit is contained in:
Kevin Wan
2022-03-24 22:10:15 +08:00
committed by GitHub
parent 70e51bb352
commit e9620c8c05
2 changed files with 48 additions and 3 deletions

View File

@@ -448,10 +448,12 @@ func (u *Unmarshaler) fillSlice(fieldType reflect.Type, value reflect.Value, map
dereffedBaseType := Deref(baseType)
dereffedBaseKind := dereffedBaseType.Kind()
refValue := reflect.ValueOf(mapValue)
conv := reflect.MakeSlice(reflect.SliceOf(baseType), refValue.Len(), refValue.Cap())
if refValue.IsNil() {
return nil
}
// support for empty slice
if !refValue.IsNil() && refValue.Len() == 0 {
conv := reflect.MakeSlice(reflect.SliceOf(baseType), refValue.Len(), refValue.Cap())
if refValue.Len() == 0 {
value.Set(conv)
return nil
}