avoid copying wallet history unnecessarily on wallet load

This commit is contained in:
Craig Raw 2022-12-15 08:29:25 +02:00
parent 66dc394215
commit 064708f088
3 changed files with 3 additions and 3 deletions

2
drongo

@ -1 +1 @@
Subproject commit 692f23e02656b43b58c33b44467f920ddc3a3f65 Subproject commit ca98d4d9b60c5a53e758fa90dcbe1c0dff78fcb6

View file

@ -145,7 +145,7 @@ public class Storage {
if(wallet.containsMasterPrivateKeys()) { if(wallet.containsMasterPrivateKeys()) {
//Derive xpub and master fingerprint from seed, potentially with passphrase //Derive xpub and master fingerprint from seed, potentially with passphrase
Wallet copy = wallet.copy(); Wallet copy = wallet.copy(false);
for(int i = 0; i < copy.getKeystores().size(); i++) { for(int i = 0; i < copy.getKeystores().size(); i++) {
Keystore copyKeystore = copy.getKeystores().get(i); Keystore copyKeystore = copy.getKeystores().get(i);
if(copyKeystore.hasSeed() && copyKeystore.getSeed().getPassphrase() == null) { if(copyKeystore.hasSeed() && copyKeystore.getSeed().getPassphrase() == null) {

View file

@ -1139,7 +1139,7 @@ public class ElectrumServer {
Matcher walletLoadingMatcher = RPC_WALLET_LOADING_PATTERN.matcher(bwtStartException.getMessage()); Matcher walletLoadingMatcher = RPC_WALLET_LOADING_PATTERN.matcher(bwtStartException.getMessage());
if(bwtStartException.getMessage().contains("Wallet file not specified")) { if(bwtStartException.getMessage().contains("Wallet file not specified")) {
throw new ServerException("Bitcoin Core requires Multi-Wallet to be enabled in the Server Preferences"); throw new ServerException("Bitcoin Core requires Multi-Wallet to be enabled in the Server Preferences");
} else if(bwtStartException.getMessage().contains("Taproot wallets are not supported")) { } else if(bwtStartException.getMessage().contains("Upgrade Bitcoin Core to v24 or later for Taproot wallet support")) {
throw new ServerException(bwtStartException.getMessage()); throw new ServerException(bwtStartException.getMessage());
} else if(walletLoadingMatcher.matches() && walletLoadingMatcher.group(1) != null) { } else if(walletLoadingMatcher.matches() && walletLoadingMatcher.group(1) != null) {
throw new ServerException(walletLoadingMatcher.group(1)); throw new ServerException(walletLoadingMatcher.group(1));