aboutsummaryrefslogtreecommitdiff
path: root/src/wallet/rpc
diff options
context:
space:
mode:
authorAndrew Chow <achow101-github@achow101.com>2022-08-24 16:40:30 -0400
committerAndrew Chow <github@achow101.com>2022-08-29 12:38:06 -0400
commit10d91c5abe9ed7dcc237c9d52c588e7d26e162a4 (patch)
tree35f27e60e47de78cc66bbd4df65284166cec5e58 /src/wallet/rpc
parente191fac4f3c37820f0618f72f0a8e8b524531ab8 (diff)
downloadbitcoin-10d91c5abe9ed7dcc237c9d52c588e7d26e162a4.tar.xz
wallet: Deduplicate Resend and ReacceptWalletTransactions
Both of these functions do almost the exact same thing. They can be deduplicated so that their behavior matches except for the filtering aspect. As this function will now always be called on wallet loading, nNextResend will also always be initialized, so wallet_resendwallettransactions.py is updated to account for that. This also resolves a bug where ResendWalletTransactions would fail to rebroadcast txs in insertion order thereby potentially rebroadcasting a child transaction before its parent and causing the child to not actually get rebroadcast. Also names the combined function to ResubmitWalletTransactions as the function just submits the transactions to the mempool rather than doing any sending by itself.
Diffstat (limited to 'src/wallet/rpc')
-rw-r--r--src/wallet/rpc/backup.cpp8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/wallet/rpc/backup.cpp b/src/wallet/rpc/backup.cpp
index 49e5b5d5e7..10e5aa17e4 100644
--- a/src/wallet/rpc/backup.cpp
+++ b/src/wallet/rpc/backup.cpp
@@ -295,7 +295,7 @@ RPCHelpMan importaddress()
RescanWallet(*pwallet, reserver);
{
LOCK(pwallet->cs_wallet);
- pwallet->ReacceptWalletTransactions();
+ pwallet->ResubmitWalletTransactions(/*relay=*/false, /*force=*/true);
}
}
@@ -476,7 +476,7 @@ RPCHelpMan importpubkey()
RescanWallet(*pwallet, reserver);
{
LOCK(pwallet->cs_wallet);
- pwallet->ReacceptWalletTransactions();
+ pwallet->ResubmitWalletTransactions(/*relay=*/false, /*force=*/true);
}
}
@@ -1397,7 +1397,7 @@ RPCHelpMan importmulti()
int64_t scannedTime = pwallet->RescanFromTime(nLowestTimestamp, reserver, true /* update */);
{
LOCK(pwallet->cs_wallet);
- pwallet->ReacceptWalletTransactions();
+ pwallet->ResubmitWalletTransactions(/*relay=*/false, /*force=*/true);
}
if (pwallet->IsAbortingRescan()) {
@@ -1691,7 +1691,7 @@ RPCHelpMan importdescriptors()
int64_t scanned_time = pwallet->RescanFromTime(lowest_timestamp, reserver, true /* update */);
{
LOCK(pwallet->cs_wallet);
- pwallet->ReacceptWalletTransactions();
+ pwallet->ResubmitWalletTransactions(/*relay=*/false, /*force=*/true);
}
if (pwallet->IsAbortingRescan()) {