diff --git a/SHAMapSync.cpp b/SHAMapSync.cpp index 546fa30ce..acd1e0888 100644 --- a/SHAMapSync.cpp +++ b/SHAMapSync.cpp @@ -79,7 +79,7 @@ bool SHAMap::getNodeFat(const SHAMapNode& wanted, std::vector& nodeI node->addRaw(s); rawNodes.push_back(s.peekData()); - if(wanted.isRoot()) // don't get a fat root + if(node->isRoot() || node->isLeaf()) // don't get a fat root, can't get a fat leaf return true; for(int i=0; i<16; i++) @@ -104,7 +104,7 @@ bool SHAMap::addRootNode(const std::vector& rootNode) boost::recursive_mutex::scoped_lock sl(mLock); // we already have a root node - if(!!root->getNodeHash()) + if(root->getNodeHash().isNonZero()) { #ifdef DEBUG std::cerr << "got root node, already have one" << std::endl; @@ -133,7 +133,7 @@ bool SHAMap::addRootNode(const uint256& hash, const std::vector& boost::recursive_mutex::scoped_lock sl(mLock); // we already have a root node - if(!!root->getNodeHash()) + if(root->getNodeHash().isNonZero()) { #ifdef DEBUG std::cerr << "got root node, already have one" << std::endl; @@ -314,6 +314,8 @@ static bool confuseMap(SHAMap &map, int count) std::list items; + map.dump(true); + for(int i=0; i(&seed), sizeof(seed)); srand(seed); +#endif + srand(2); SHAMap source, destination; // add random data to the source map - int items=10000; + int items=8; for(int i=0; i