From 3b70cc91fe269ccea44e078b89b1110dbf725292 Mon Sep 17 00:00:00 2001 From: M Date: Wed, 12 Jan 2022 16:32:56 +0200 Subject: [PATCH] Fixes for randomize addresses for electrum wallets --- cw_bitcoin/lib/electrum_wallet_addresses.dart | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/cw_bitcoin/lib/electrum_wallet_addresses.dart b/cw_bitcoin/lib/electrum_wallet_addresses.dart index a5e5b6e9b..b2d9a539f 100644 --- a/cw_bitcoin/lib/electrum_wallet_addresses.dart +++ b/cw_bitcoin/lib/electrum_wallet_addresses.dart @@ -132,7 +132,16 @@ abstract class ElectrumWalletAddressesBase extends WalletAddresses with Store { } void randomizeAddress() { + const minCountOfVisibleAddresses = 5; final random = Random(); - address = addresses[random.nextInt(addresses.length)].address; + var availableAddresses = addresses + .where((addr) => !addr.isHidden) + .toList(); + + if (availableAddresses.length < minCountOfVisibleAddresses) { + availableAddresses = addresses; + } + + address = availableAddresses[random.nextInt(availableAddresses.length)].address; } } \ No newline at end of file