From e2d8e80f66308be4244a24bd6fb59126bd87aa0e Mon Sep 17 00:00:00 2001 From: sneurlax Date: Fri, 16 Feb 2024 16:33:51 -0600 Subject: [PATCH] close old electrum client when updating to a new one and ignore late initialization errors --- .../wallet_mixin_interfaces/electrumx_interface.dart | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/wallets/wallet/wallet_mixin_interfaces/electrumx_interface.dart b/lib/wallets/wallet/wallet_mixin_interfaces/electrumx_interface.dart index 245dd9ed5..407bfa3c0 100644 --- a/lib/wallets/wallet/wallet_mixin_interfaces/electrumx_interface.dart +++ b/lib/wallets/wallet/wallet_mixin_interfaces/electrumx_interface.dart @@ -1001,6 +1001,16 @@ mixin ElectrumXInterface on Bip39HDWallet { .toList(); final newNode = await getCurrentElectrumXNode(); + try { + await electrumXClient.electrumAdapterClient?.close(); + } catch (e, s) { + if (e.toString().contains("initialized")) { + // Ignore. This should happen every first time the wallet is opened. + } else { + Logging.instance + .log("Error closing electrumXClient: $e", level: LogLevel.Error); + } + } electrumXClient = ElectrumXClient.from( node: newNode, prefs: prefs,