From f26267e5728391f62a774f6a96025a06a9a79c89 Mon Sep 17 00:00:00 2001 From: CalDescent Date: Sun, 7 Aug 2022 18:38:27 +0100 Subject: [PATCH] Don't sync, save, or load null seed wallets. They only act as a placeholder wallet when redeeming/refunding a P2SH. --- .../qortal/controller/PirateChainWalletController.java | 4 ++++ src/main/java/org/qortal/crosschain/PirateChain.java | 2 -- src/main/java/org/qortal/crosschain/PirateWallet.java | 8 ++++++++ 3 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/qortal/controller/PirateChainWalletController.java b/src/main/java/org/qortal/controller/PirateChainWalletController.java index 821a7c82..82108bd4 100644 --- a/src/main/java/org/qortal/controller/PirateChainWalletController.java +++ b/src/main/java/org/qortal/controller/PirateChainWalletController.java @@ -50,6 +50,10 @@ public class PirateChainWalletController extends Thread { // Nothing to do yet continue; } + if (this.currentWallet.isNullSeedWallet()) { + // Don't sync the null seed wallet + continue; + } LOGGER.debug("Syncing Pirate Chain wallet..."); String response = LiteWalletJni.execute("sync", ""); diff --git a/src/main/java/org/qortal/crosschain/PirateChain.java b/src/main/java/org/qortal/crosschain/PirateChain.java index c1368f18..1cea2dbb 100644 --- a/src/main/java/org/qortal/crosschain/PirateChain.java +++ b/src/main/java/org/qortal/crosschain/PirateChain.java @@ -439,7 +439,6 @@ public class PirateChain extends Bitcoiny { PirateChainWalletController walletController = PirateChainWalletController.getInstance(); walletController.initNullSeedWallet(); walletController.ensureInitialized(); - walletController.ensureSynchronized(); walletController.getCurrentWallet().unlock(); @@ -491,7 +490,6 @@ public class PirateChain extends Bitcoiny { PirateChainWalletController walletController = PirateChainWalletController.getInstance(); walletController.initNullSeedWallet(); walletController.ensureInitialized(); - walletController.ensureSynchronized(); walletController.getCurrentWallet().unlock(); diff --git a/src/main/java/org/qortal/crosschain/PirateWallet.java b/src/main/java/org/qortal/crosschain/PirateWallet.java index 91fe155b..1cf8f81a 100644 --- a/src/main/java/org/qortal/crosschain/PirateWallet.java +++ b/src/main/java/org/qortal/crosschain/PirateWallet.java @@ -190,6 +190,10 @@ public class PirateWallet { LOGGER.info("Error: can't save wallet, because no wallet it initialized"); return false; } + if (this.isNullSeedWallet()) { + // Don't save wallets that have a null seed + return false; + } // Encrypt first (will do nothing if already encrypted) this.encrypt(); @@ -218,6 +222,10 @@ public class PirateWallet { } public String load() throws IOException { + if (this.isNullSeedWallet()) { + // Don't load wallets that have a null seed + return null; + } Path walletPath = this.getCurrentWalletPath(); if (!Files.exists(walletPath)) { return null;