diff --git a/drongo b/drongo index 37793173..20670b9b 160000 --- a/drongo +++ b/drongo @@ -1 +1 @@ -Subproject commit 377931738885c58d750005f2dfb61d3283820395 +Subproject commit 20670b9b7db749472b02d7f6f129294c53832390 diff --git a/src/main/java/com/sparrowwallet/sparrow/transaction/HeadersController.java b/src/main/java/com/sparrowwallet/sparrow/transaction/HeadersController.java index 7e458a24..28c8b83a 100644 --- a/src/main/java/com/sparrowwallet/sparrow/transaction/HeadersController.java +++ b/src/main/java/com/sparrowwallet/sparrow/transaction/HeadersController.java @@ -1455,21 +1455,10 @@ public class HeadersController extends TransactionFormController implements Init return; } - Map
pending = new LinkedHashMap<>(); - for(PSBTOutput psbtOutput : psbt.getPsbtOutputs()) { - SilentPaymentAddress spAddress = psbtOutput.getSilentPaymentAddress(); - if(spAddress != null) { - Script script = psbtOutput.getScript(); - Address address = script == null ? null : script.getToAddress(); - if(address == null) { - return; - } - pending.put(address, spAddress); - } - } + Map verified = wallet.verifySilentPaymentOutputs(psbt); boolean changed = false; - for(Map.Entry entry : pending.entrySet()) { + for(Map.Entry entry : verified.entrySet()) { if(!entry.getValue().equals(wallet.getSilentPaymentAddress(entry.getKey()))) { wallet.addSilentPaymentAddress(entry.getKey(), entry.getValue()); changed = true;