From 1572b1bd97ad11be54837b2e3fcfecf3bace9bfe Mon Sep 17 00:00:00 2001 From: Aaron Buchwald Date: Fri, 12 Jun 2020 14:09:45 -0400 Subject: [PATCH] Return early when finding address already exists --- vms/avm/service.go | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/vms/avm/service.go b/vms/avm/service.go index 1dce66d..56e5599 100644 --- a/vms/avm/service.go +++ b/vms/avm/service.go @@ -670,18 +670,16 @@ func (service *Service) ImportKey(r *http.Request, args *ImportKeyArgs, reply *I return fmt.Errorf("problem saving key while getting existing addresses: %w", err) } newAddress := sk.PublicKey().Address() - exists := false for _, address := range addresses { if newAddress.Equals(address) { - exists = true + reply.Address = service.vm.Format(newAddress.Bytes()) + return nil } } - if !exists { - addresses = append(addresses, newAddress) - if err := user.SetAddresses(db, addresses); err != nil { - return fmt.Errorf("problem saving addresses: %w", err) - } + addresses = append(addresses, newAddress) + if err := user.SetAddresses(db, addresses); err != nil { + return fmt.Errorf("problem saving addresses: %w", err) } reply.Address = service.vm.Format(newAddress.Bytes())