mirror of
https://github.com/bitcoin/bitcoin.git
synced 2026-05-29 23:33:33 +02:00
Merge bitcoin/bitcoin#33671: wallet: Add separate balance info for non-mempool wallet txs
32325d1777tests: Add test for mempool-invalid wallet tx (Anthony Towns)25e063d950wallet: Add separate balance info for non-mempool wallet txs (Anthony Towns)81e763f1e5wallet: Have GetBalance report used amount directly without two calls (Anthony Towns) Pull request description: Changes `getbalances` to report the sum of txos spent by transactions that aren't confirmed nor in the mempool (eg due to being part of too long a mempool chain, or spending non-standard outputs, or having a datacarrier output that exceeds `-datacarriersize`, etc). Those values are added to the trusted/untrusted_pending/immature/used fields as appropriate (where previously they were skipped), and subtracted from the new nonmempool field, so that the sum of all fields remains the same. For example: ``` $ bitcoin-cli -regtest getbalances { "mine": { "trusted": 6049.99999220, "untrusted_pending": 0.00000000, "immature": 3200.00000780, "nonmempool": -100.00000000 }, "lastprocessedblock": { "hash": "3ab4582226d5e8ad76438db48d76e822c31bce2cdbc7ba82a5d974a277515d0d", "height": 221 } } ``` Closes #11887 ACKs for top commit: achow101: ACK32325d1777w0xlt: lgtm ACK32325d1777musaHaruna: Code Review ACK [32325d1](32325d1777) Tree-SHA512: 142581944d1b3213067e219e3b8205f27b89007e545149c01b801bad38fe730c5b2bfdfe6a2064c3649889f66ec48ec7616982564d00e3d83837249e925d8f16
This commit is contained in:
@@ -369,11 +369,14 @@ struct WalletBalances
|
||||
CAmount balance = 0;
|
||||
CAmount unconfirmed_balance = 0;
|
||||
CAmount immature_balance = 0;
|
||||
CAmount used_balance = 0;
|
||||
CAmount nonmempool_balance = 0;
|
||||
|
||||
bool balanceChanged(const WalletBalances& prev) const
|
||||
{
|
||||
return balance != prev.balance || unconfirmed_balance != prev.unconfirmed_balance ||
|
||||
immature_balance != prev.immature_balance;
|
||||
immature_balance != prev.immature_balance ||
|
||||
used_balance != prev.used_balance || nonmempool_balance != prev.nonmempool_balance;
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
Reference in New Issue
Block a user