diff options
author | John Newbery <john@johnnewbery.com> | 2020-03-23 10:45:34 -0400 |
---|---|---|
committer | John Newbery <john@johnnewbery.com> | 2020-04-21 14:19:15 -0400 |
commit | 21fa0a44abe8c1b5c452e097eab20cf0ae988805 (patch) | |
tree | 4d3c982ba590833e9e949c55ec504e3b65fdc1bf | |
parent | 2685c214cce4b07695273503e60350e3f05fe3e2 (diff) |
[docs] use consistent naming for possible_overwrite
And other general comment improvements for adding coins.
-rw-r--r-- | src/coins.cpp | 6 | ||||
-rw-r--r-- | src/coins.h | 4 | ||||
-rw-r--r-- | src/test/coins_tests.cpp | 4 | ||||
-rw-r--r-- | src/validation.cpp | 9 |
4 files changed, 12 insertions, 11 deletions
diff --git a/src/coins.cpp b/src/coins.cpp index 9e0dd6cd9f..6b4cb2aec7 100644 --- a/src/coins.cpp +++ b/src/coins.cpp @@ -99,12 +99,12 @@ void CCoinsViewCache::AddCoin(const COutPoint &outpoint, Coin&& coin, bool possi cachedCoinsUsage += it->second.coin.DynamicMemoryUsage(); } -void AddCoins(CCoinsViewCache& cache, const CTransaction &tx, int nHeight, bool check) { +void AddCoins(CCoinsViewCache& cache, const CTransaction &tx, int nHeight, bool check_for_overwrite) { bool fCoinbase = tx.IsCoinBase(); const uint256& txid = tx.GetHash(); for (size_t i = 0; i < tx.vout.size(); ++i) { - bool overwrite = check ? cache.HaveCoin(COutPoint(txid, i)) : fCoinbase; - // Always set the possible_overwrite flag to AddCoin for coinbase txn, in order to correctly + bool overwrite = check_for_overwrite ? cache.HaveCoin(COutPoint(txid, i)) : fCoinbase; + // Coinbase transactions can always be overwritten, in order to correctly // deal with the pre-BIP30 occurrences of duplicate coinbase transactions. cache.AddCoin(COutPoint(txid, i), Coin(tx.vout[i], nHeight, fCoinbase), overwrite); } diff --git a/src/coins.h b/src/coins.h index d5484bcf65..6cfe368331 100644 --- a/src/coins.h +++ b/src/coins.h @@ -284,10 +284,10 @@ public: const Coin& AccessCoin(const COutPoint &output) const; /** - * Add a coin. Set potential_overwrite to true if an unspent version may + * Add a coin. Set possible_overwrite to true if an unspent version may * already exist in the cache. */ - void AddCoin(const COutPoint& outpoint, Coin&& coin, bool potential_overwrite); + void AddCoin(const COutPoint& outpoint, Coin&& coin, bool possible_overwrite); /** * Spend a coin. Pass moveto in order to get the deleted data. diff --git a/src/test/coins_tests.cpp b/src/test/coins_tests.cpp index 638ae7d353..bae610989d 100644 --- a/src/test/coins_tests.cpp +++ b/src/test/coins_tests.cpp @@ -751,9 +751,9 @@ BOOST_AUTO_TEST_CASE(ccoins_add) /* Check AddCoin behavior, requesting a new coin from a cache view, * writing a modification to the coin, and then checking the resulting * entry in the cache after the modification. Verify behavior with the - * with the AddCoin potential_overwrite argument set to false, and to true. + * AddCoin possible_overwrite argument set to false, and to true. * - * Cache Write Result Cache Result potential_overwrite + * Cache Write Result Cache Result possible_overwrite * Value Value Value Flags Flags */ CheckAddCoin(ABSENT, VALUE3, VALUE3, NO_ENTRY , DIRTY|FRESH, false); diff --git a/src/validation.cpp b/src/validation.cpp index bab04b8e34..bb4aae39db 100644 --- a/src/validation.cpp +++ b/src/validation.cpp @@ -1669,10 +1669,11 @@ int ApplyTxInUndo(Coin&& undo, CCoinsViewCache& view, const COutPoint& out) return DISCONNECT_FAILED; // adding output for transaction without known metadata } } - // The potential_overwrite parameter to AddCoin is only allowed to be false if we know for - // sure that the coin did not already exist in the cache. As we have queried for that above - // using HaveCoin, we don't need to guess. When fClean is false, a coin already existed and - // it is an overwrite. + // If the coin already exists as an unspent coin in the cache, then the + // possible_overwrite parameter to AddCoin must be set to true. We have + // already checked whether an unspent coin exists above using HaveCoin, so + // we don't need to guess. When fClean is false, an unspent coin already + // existed and it is an overwrite. view.AddCoin(out, std::move(undo), !fClean); return fClean ? DISCONNECT_OK : DISCONNECT_UNCLEAN; |