From 79517da131c5dcd704c2f0cfbeac376da08eb1da Mon Sep 17 00:00:00 2001 From: Craig Raw Date: Thu, 28 May 2026 14:51:24 +0200 Subject: [PATCH] fix potential npes resulting from get transactions --- .../java/com/sparrowwallet/sparrow/net/ElectrumServer.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/sparrowwallet/sparrow/net/ElectrumServer.java b/src/main/java/com/sparrowwallet/sparrow/net/ElectrumServer.java index 6671e430..9c542132 100644 --- a/src/main/java/com/sparrowwallet/sparrow/net/ElectrumServer.java +++ b/src/main/java/com/sparrowwallet/sparrow/net/ElectrumServer.java @@ -877,6 +877,11 @@ public class ElectrumServer { for(BlockTransactionHash reference : references.keySet()) { Transaction transaction = references.get(reference); + if(transaction == null) { + transactionMap.put(reference.getHash(), UNFETCHABLE_BLOCK_TRANSACTION); + checkReferences.removeIf(ref -> ref.getHash().equals(reference.getHash())); + continue; + } Date blockDate = null; if(reference.getHeight() > 0) { @@ -890,7 +895,7 @@ public class ElectrumServer { } Long fee = reference.getFee(); - if(fee == null) { + if(fee == null && wallet != null) { BlockTransaction cached = wallet.getWalletTransaction(reference.getHash()); if(cached != null && cached.getFee() != null) { fee = cached.getFee();