diff options
author | Antoine Poinsot <darosior@protonmail.com> | 2022-07-07 14:06:27 +0200 |
---|---|---|
committer | Antoine Poinsot <darosior@protonmail.com> | 2022-08-16 18:33:05 +0200 |
commit | 0fd2d144540b720626fc065a3cef5188831b5ee2 (patch) | |
tree | 59dd67fd3cf748fbd829cad0421f0192cce12b29 /src/wallet/receive.cpp | |
parent | 55f98d087efd2609d808c082d5770306cc489409 (diff) | |
download | bitcoin-0fd2d144540b720626fc065a3cef5188831b5ee2.tar.xz |
rpc: add an include_change parameter to listsinceblock
It's useful for an external application tracking coins to not be limited
by our change detection. For instance, for a watchonly wallet with two
descriptors a transaction from one to the other would be considered a
change output and not be included in the result (if the address was not
generated by this wallet).
Diffstat (limited to 'src/wallet/receive.cpp')
-rw-r--r-- | src/wallet/receive.cpp | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/wallet/receive.cpp b/src/wallet/receive.cpp index 8de4017371..c3aeef4209 100644 --- a/src/wallet/receive.cpp +++ b/src/wallet/receive.cpp @@ -223,7 +223,8 @@ CAmount CachedTxGetAvailableCredit(const CWallet& wallet, const CWalletTx& wtx, void CachedTxGetAmounts(const CWallet& wallet, const CWalletTx& wtx, std::list<COutputEntry>& listReceived, - std::list<COutputEntry>& listSent, CAmount& nFee, const isminefilter& filter) + std::list<COutputEntry>& listSent, CAmount& nFee, const isminefilter& filter, + bool include_change) { nFee = 0; listReceived.clear(); @@ -248,8 +249,7 @@ void CachedTxGetAmounts(const CWallet& wallet, const CWalletTx& wtx, // 2) the output is to us (received) if (nDebit > 0) { - // Don't report 'change' txouts - if (OutputIsChange(wallet, txout)) + if (!include_change && OutputIsChange(wallet, txout)) continue; } else if (!(fIsMine & filter)) |