diff options
author | Wladimir J. van der Laan <laanwj@gmail.com> | 2015-01-02 17:35:36 +0100 |
---|---|---|
committer | Wladimir J. van der Laan <laanwj@gmail.com> | 2015-01-02 17:35:45 +0100 |
commit | 40d65eb66d0865aa64c410c3eb970dafcad71851 (patch) | |
tree | 841e424200570715a0402714c2add3ca1ccaed78 | |
parent | 269d8ba0d24eb9a35c8c9e4995eccedfb723717b (diff) | |
parent | 1b178a7f966cd3649b7f0a52ffc4b8ef4c227900 (diff) |
Merge pull request #5580
1b178a7 Bugfix: ConnectBlock: In case the genesis block gets in with fJustCheck, behave correctly (Luke Dashjr)
228d238 Make CCoinsViewCache's copy constructor private (Luke Dashjr)
-rw-r--r-- | src/coins.h | 5 | ||||
-rw-r--r-- | src/main.cpp | 3 |
2 files changed, 7 insertions, 1 deletions
diff --git a/src/coins.h b/src/coins.h index 2be52ad171..4f1afb00de 100644 --- a/src/coins.h +++ b/src/coins.h @@ -437,6 +437,11 @@ public: private: CCoinsMap::iterator FetchCoins(const uint256 &txid); CCoinsMap::const_iterator FetchCoins(const uint256 &txid) const; + + /** + * By making the copy constructor private, we prevent accidentally using it when one intends to create a cache on top of a base cache. + */ + CCoinsViewCache(const CCoinsViewCache &); }; #endif // BITCOIN_COINS_H diff --git a/src/main.cpp b/src/main.cpp index 5c0f0116d6..675b8afd1d 100644 --- a/src/main.cpp +++ b/src/main.cpp @@ -1718,7 +1718,8 @@ bool ConnectBlock(const CBlock& block, CValidationState& state, CBlockIndex* pin // Special case for the genesis block, skipping connection of its transactions // (its coinbase is unspendable) if (block.GetHash() == Params().HashGenesisBlock()) { - view.SetBestBlock(pindex->GetBlockHash()); + if (!fJustCheck) + view.SetBestBlock(pindex->GetBlockHash()); return true; } |