don't subscribeBlockHeaders if subscription exists

This commit is contained in:
sneurlax 2024-02-06 20:55:31 -06:00
parent 3d42967c8b
commit 46285d44ea

View file

@ -833,8 +833,7 @@ mixin ElectrumXInterface<T extends Bip39HDCurrency> on Bip39HDWallet<T> {
if (_latestHeight != null) { if (_latestHeight != null) {
return _latestHeight!; return _latestHeight!;
} }
} } else {
// Make sure we only complete once. // Make sure we only complete once.
bool isFirstResponse = true; bool isFirstResponse = true;
@ -843,7 +842,7 @@ mixin ElectrumXInterface<T extends Bip39HDCurrency> on Bip39HDWallet<T> {
subscribableElectrumXClient.subscribeToBlockHeaders(); subscribableElectrumXClient.subscribeToBlockHeaders();
// set stream subscription // set stream subscription
ElectrumxChainHeightService.subscriptions[cryptoCurrency.coin] ??= ElectrumxChainHeightService.subscriptions[cryptoCurrency.coin] =
subscription.responseStream.asBroadcastStream().listen((event) { subscription.responseStream.asBroadcastStream().listen((event) {
final response = event; final response = event;
if (response != null && if (response != null &&
@ -866,6 +865,7 @@ mixin ElectrumXInterface<T extends Bip39HDCurrency> on Bip39HDWallet<T> {
level: LogLevel.Error); level: LogLevel.Error);
} }
}); });
}
// Wait for first response. // Wait for first response.
return completer.future; return completer.future;