aboutsummaryrefslogtreecommitdiff
path: root/src/validation.cpp
diff options
context:
space:
mode:
authorMatt Corallo <[email protected]>2016-11-29 21:25:39 -0800
committerMatt Corallo <[email protected]>2016-12-04 00:18:44 -0800
commitdd0df81ebdbf705f7ad386c7229bf1bbc3125f62 (patch)
tree5ad956d19aa507f94eb195c438be06ea7c5b18a9 /src/validation.cpp
parentSwitch pblock in ProcessNewBlock to a shared_ptr (diff)
downloaddiscoin-dd0df81ebdbf705f7ad386c7229bf1bbc3125f62.tar.xz
discoin-dd0df81ebdbf705f7ad386c7229bf1bbc3125f62.zip
Document ConnectBlock connectTrace postconditions
Diffstat (limited to 'src/validation.cpp')
-rw-r--r--src/validation.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/src/validation.cpp b/src/validation.cpp
index 0983c1f76..3bcbf33d6 100644
--- a/src/validation.cpp
+++ b/src/validation.cpp
@@ -2164,6 +2164,10 @@ struct ConnectTrace {
/**
* Connect a new block to chainActive. pblock is either NULL or a pointer to a CBlock
* corresponding to pindexNew, to bypass loading it again from disk.
+ *
+ * The block is always added to connectTrace (either after loading from disk or by copying
+ * pblock) - if that is not intended, care must be taken to remove the last entry in
+ * blocksConnected in case of failure.
*/
bool static ConnectTip(CValidationState& state, const CChainParams& chainparams, CBlockIndex* pindexNew, const std::shared_ptr<const CBlock>& pblock, ConnectTrace& connectTrace)
{