diff options
author | practicalswift <practicalswift@users.noreply.github.com> | 2017-08-28 09:24:17 +0200 |
---|---|---|
committer | practicalswift <practicalswift@users.noreply.github.com> | 2017-09-06 10:45:37 +0200 |
commit | fdc329376c8a0fa4dffd0cd2599a494a64c38472 (patch) | |
tree | 2e2052bb1fced6b82e6eb58adb64c7c9bf23fcf8 /src/validation.cpp | |
parent | 6866b4912b8013ed748d12250209f7079a3c92e6 (diff) |
Document assumptions that are being made to avoid NULL pointer dereferences
Diffstat (limited to 'src/validation.cpp')
-rw-r--r-- | src/validation.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/src/validation.cpp b/src/validation.cpp index 3b9636839d..939921d677 100644 --- a/src/validation.cpp +++ b/src/validation.cpp @@ -1710,6 +1710,7 @@ static bool ConnectBlock(const CBlock& block, CValidationState& state, CBlockInd // before the first had been spent. Since those coinbases are sufficiently buried its no longer possible to create further // duplicate transactions descending from the known pairs either. // If we're on the known chain at height greater than where BIP34 activated, we can save the db accesses needed for the BIP30 check. + assert(pindex->pprev); CBlockIndex *pindexBIP34height = pindex->pprev->GetAncestor(chainparams.GetConsensus().BIP34Height); //Only continue to enforce if we're below BIP34 activation height or the block hash at that height doesn't correspond. fEnforceBIP30 = fEnforceBIP30 && (!pindexBIP34height || !(pindexBIP34height->GetBlockHash() == chainparams.GetConsensus().BIP34Hash)); @@ -1849,6 +1850,7 @@ static bool ConnectBlock(const CBlock& block, CValidationState& state, CBlockInd if (!pblocktree->WriteTxIndex(vPos)) return AbortNode(state, "Failed to write transaction index"); + assert(pindex->phashBlock); // add this block to the view's block chain view.SetBestBlock(pindex->GetBlockHash()); |