1
0

wallet: recreate Synchronizer and Verifier when switching servers

not that nice but solves races
This commit is contained in:
SomberNight
2018-09-08 01:34:33 +02:00
parent 32528d6aa6
commit 136df7e5ee
4 changed files with 26 additions and 20 deletions

View File

@@ -143,6 +143,8 @@ class AddressSynchronizer(PrintError):
interface = self.network.interface
if interface is None:
return # we should get called again soon
self.verifier = SPV(self.network, self)
self.synchronizer = Synchronizer(self)
await interface.group.spawn(self.verifier.main(interface))
await interface.group.spawn(self.synchronizer.send_subscriptions(interface))
await interface.group.spawn(self.synchronizer.handle_status(interface))
@@ -151,8 +153,6 @@ class AddressSynchronizer(PrintError):
def start_threads(self, network):
self.network = network
if self.network is not None:
self.verifier = SPV(self.network, self)
self.synchronizer = Synchronizer(self)
self.network.register_callback(self.on_default_server_changed, ['default_server_changed'])
self.network.trigger_callback('default_server_changed')
else: