diff --git a/src/cpp/ripple/SHAMapSync.cpp b/src/cpp/ripple/SHAMapSync.cpp index 5d99399b0..41e309eae 100644 --- a/src/cpp/ripple/SHAMapSync.cpp +++ b/src/cpp/ripple/SHAMapSync.cpp @@ -62,7 +62,7 @@ void SHAMap::getMissingNodes(std::vector& nodeIDs, std::vectorhaveNode(childID, childHash, nodeData)) { SHAMapTreeNode::pointer ptr = - boost::make_shared(childID, nodeData, mSeq, snfPREFIX, childHash); + boost::make_shared(childID, nodeData, mSeq - 1, snfPREFIX, childHash); cLog(lsTRACE) << "Got sync node from cache: " << *d; mTNByID[*ptr] = ptr; d = ptr.get(); @@ -193,7 +193,7 @@ SMAddNode SHAMap::addRootNode(const std::vector& rootNode, SHANod return SMAddNode::okay(); } - SHAMapTreeNode::pointer node = boost::make_shared(SHAMapNode(), rootNode, mSeq, format, uint256()); + SHAMapTreeNode::pointer node = boost::make_shared(SHAMapNode(), rootNode, mSeq - 1, format, uint256()); if (!node) return SMAddNode::invalid(); @@ -231,7 +231,7 @@ SMAddNode SHAMap::addRootNode(const uint256& hash, const std::vector(SHAMapNode(), rootNode, mSeq, format, uint256()); + SHAMapTreeNode::pointer node = boost::make_shared(SHAMapNode(), rootNode, mSeq - 1, format, uint256()); if (!node || node->getNodeHash() != hash) return SMAddNode::invalid(); @@ -308,7 +308,7 @@ SMAddNode SHAMap::addKnownNode(const SHAMapNode& node, const std::vector(node, rawNode, mSeq, snfWIRE, uint256()); + SHAMapTreeNode::pointer newNode = boost::make_shared(node, rawNode, mSeq - 1, snfWIRE, uint256()); if (hash != newNode->getNodeHash()) // these aren't the droids we're looking for return SMAddNode::invalid();