signer/core: don't mismatch reject and no accounts (#21677)
* signer/core: don't mismatch reject and zero accounts, fixes #21674 * signer/core: docs
This commit is contained in:
parent
015e78928a
commit
6d29e192e9
@ -383,7 +383,9 @@ func (api *SignerAPI) startUSBListener() {
|
||||
// List returns the set of wallet this signer manages. Each wallet can contain
|
||||
// multiple accounts.
|
||||
func (api *SignerAPI) List(ctx context.Context) ([]common.Address, error) {
|
||||
var accs []accounts.Account
|
||||
var accs = make([]accounts.Account, 0)
|
||||
// accs is initialized as empty list, not nil. We use 'nil' to signal
|
||||
// rejection, as opposed to an empty list.
|
||||
for _, wallet := range api.am.Wallets() {
|
||||
accs = append(accs, wallet.Accounts()...)
|
||||
}
|
||||
@ -393,13 +395,11 @@ func (api *SignerAPI) List(ctx context.Context) ([]common.Address, error) {
|
||||
}
|
||||
if result.Accounts == nil {
|
||||
return nil, ErrRequestDenied
|
||||
|
||||
}
|
||||
addresses := make([]common.Address, 0)
|
||||
for _, acc := range result.Accounts {
|
||||
addresses = append(addresses, acc.Address)
|
||||
}
|
||||
|
||||
return addresses, nil
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user