diff --git a/VERSION b/VERSION index 9cefff060..e5135bf13 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -0.69.2 +0.69.3 diff --git a/api/geth_backend.go b/api/geth_backend.go index f37a04c34..8fdaee848 100644 --- a/api/geth_backend.go +++ b/api/geth_backend.go @@ -628,6 +628,13 @@ func (b *GethStatusBackend) startNode(config *params.NodeConfig) (err error) { }); err != nil { return } + if config.WalletConfig.Enabled { + walletService, err := b.statusNode.WalletService() + if err != nil { + return err + } + walletService.SetClient(b.statusNode.RPCClient().Ethclient()) + } signal.SendNodeStarted() b.transactor.SetNetworkID(config.NetworkID) diff --git a/services/wallet/service.go b/services/wallet/service.go index e636de14d..fdf015c32 100644 --- a/services/wallet/service.go +++ b/services/wallet/service.go @@ -51,6 +51,11 @@ func (s *Service) GetFeed() *event.Feed { return s.feed } +// SetClient sets ethclient +func (s *Service) SetClient(client *ethclient.Client) { + s.client = client +} + // StartReactor separately because it requires known ethereum address, which will become available only after login. func (s *Service) StartReactor(client *ethclient.Client, accounts []common.Address, chain *big.Int, watchNewBlocks bool) error { reactor := NewReactor(s.db, s.feed, client, chain, watchNewBlocks)