refactor RemoveItemFromArray

This commit is contained in:
Tuna 2018-11-10 10:15:43 +07:00
parent 6a0352da38
commit 942893594d

View file

@ -246,24 +246,18 @@ func (a UnprefixedAddress) MarshalText() ([]byte, error) {
// Extract validators from byte array. // Extract validators from byte array.
func RemoveItemFromArray(array []Address, items []Address) []Address { func RemoveItemFromArray(array []Address, items []Address) []Address {
if items == nil { if len(items) == 0 {
return array return array
} }
i := 0;
for i < len(array) {
value := array[i]
remove := false
for _, item := range items { for _, item := range items {
if value == item { for i := len(array) - 1; i >= 0; i-- {
if array[i] == item {
array = append(array[:i], array[i+1:]...) array = append(array[:i], array[i+1:]...)
remove = true
break
} }
} }
if !remove {
i++
}
} }
return array return array
} }