Merge pull request #5002 from zgfzgf/fix-wallet-deadlock
fix wallet dead lock
This commit is contained in:
commit
b916ac83cb
@ -6,18 +6,16 @@ import (
|
|||||||
"strings"
|
"strings"
|
||||||
"sync"
|
"sync"
|
||||||
|
|
||||||
|
"github.com/filecoin-project/go-address"
|
||||||
"github.com/filecoin-project/go-state-types/crypto"
|
"github.com/filecoin-project/go-state-types/crypto"
|
||||||
logging "github.com/ipfs/go-log/v2"
|
logging "github.com/ipfs/go-log/v2"
|
||||||
"golang.org/x/xerrors"
|
"golang.org/x/xerrors"
|
||||||
|
|
||||||
"github.com/filecoin-project/go-address"
|
|
||||||
|
|
||||||
"github.com/filecoin-project/lotus/api"
|
"github.com/filecoin-project/lotus/api"
|
||||||
_ "github.com/filecoin-project/lotus/lib/sigs/bls" // enable bls signatures
|
|
||||||
_ "github.com/filecoin-project/lotus/lib/sigs/secp" // enable secp signatures
|
|
||||||
|
|
||||||
"github.com/filecoin-project/lotus/chain/types"
|
"github.com/filecoin-project/lotus/chain/types"
|
||||||
"github.com/filecoin-project/lotus/lib/sigs"
|
"github.com/filecoin-project/lotus/lib/sigs"
|
||||||
|
_ "github.com/filecoin-project/lotus/lib/sigs/bls" // enable bls signatures
|
||||||
|
_ "github.com/filecoin-project/lotus/lib/sigs/secp" // enable secp signatures
|
||||||
)
|
)
|
||||||
|
|
||||||
var log = logging.Logger("wallet")
|
var log = logging.Logger("wallet")
|
||||||
@ -270,7 +268,7 @@ func (w *LocalWallet) WalletHas(ctx context.Context, addr address.Address) (bool
|
|||||||
return k != nil, nil
|
return k != nil, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (w *LocalWallet) WalletDelete(ctx context.Context, addr address.Address) error {
|
func (w *LocalWallet) walletDelete(ctx context.Context, addr address.Address) error {
|
||||||
k, err := w.findKey(addr)
|
k, err := w.findKey(addr)
|
||||||
|
|
||||||
if err != nil {
|
if err != nil {
|
||||||
@ -305,6 +303,14 @@ func (w *LocalWallet) WalletDelete(ctx context.Context, addr address.Address) er
|
|||||||
|
|
||||||
delete(w.keys, addr)
|
delete(w.keys, addr)
|
||||||
|
|
||||||
|
return nil
|
||||||
|
}
|
||||||
|
|
||||||
|
func (w *LocalWallet) WalletDelete(ctx context.Context, addr address.Address) error {
|
||||||
|
if err := w.walletDelete(ctx, addr); err != nil {
|
||||||
|
return xerrors.Errorf("wallet delete: %w", err)
|
||||||
|
}
|
||||||
|
|
||||||
def, err := w.GetDefault()
|
def, err := w.GetDefault()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return xerrors.Errorf("getting default address: %w", err)
|
return xerrors.Errorf("getting default address: %w", err)
|
||||||
|
Loading…
Reference in New Issue
Block a user