From 8d126869a666eddfadd4595e5548c38ee339e40b Mon Sep 17 00:00:00 2001 From: Craig Raw Date: Sat, 30 May 2026 12:32:05 +0200 Subject: [PATCH] fix potential off by 1 sat rounding error on imported send to many dialog amounts --- .../sparrowwallet/sparrow/control/SendToManyDialog.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/sparrowwallet/sparrow/control/SendToManyDialog.java b/src/main/java/com/sparrowwallet/sparrow/control/SendToManyDialog.java index 1f7e6f76..40a2c572 100644 --- a/src/main/java/com/sparrowwallet/sparrow/control/SendToManyDialog.java +++ b/src/main/java/com/sparrowwallet/sparrow/control/SendToManyDialog.java @@ -219,7 +219,7 @@ public class SendToManyDialog extends Dialog> { long amount; if(bitcoinUnit == BitcoinUnit.BTC) { double doubleAmount = Double.parseDouble(csvReader.get(1).replace(",", "")); - amount = (long)(doubleAmount * Transaction.SATOSHIS_PER_BITCOIN); + amount = bitcoinUnit.getSatsValue(doubleAmount); } else { amount = Long.parseLong(csvReader.get(1).replace(",", "")); } @@ -487,11 +487,7 @@ public class SendToManyDialog extends Dialog> { } if(sendToAddress != null && value != null) { - if(bitcoinUnit == BitcoinUnit.BTC) { - value = value * Transaction.SATOSHIS_PER_BITCOIN; - } - - payments.add(sendToAddress.toPayment(label, value.longValue(), false)); + payments.add(sendToAddress.toPayment(label, bitcoinUnit.getSatsValue(value), false)); } }