diff --git a/src/cpp/ripple/LedgerAcquire.cpp b/src/cpp/ripple/LedgerAcquire.cpp index 2d008260a5..9f11893afe 100644 --- a/src/cpp/ripple/LedgerAcquire.cpp +++ b/src/cpp/ripple/LedgerAcquire.cpp @@ -225,6 +225,9 @@ void LedgerAcquire::trigger(Peer::ref peer) cLog(lsTRACE) << "base=" << mHaveBase << " tx=" << mHaveTransactions << " as=" << mHaveState; } + if (!mHaveBase) + tryLocal(); + ripple::TMGetLedger tmGL; tmGL.set_ledgerhash(mHash.begin(), mHash.size()); if (getTimeouts() != 0) @@ -244,6 +247,7 @@ void LedgerAcquire::trigger(Peer::ref peer) bool typeSet = false; BOOST_FOREACH(neededHash_t& p, need) { + theApp->getOPs().addWantedHash(p.second); if (!typeSet) { tmBH.set_type(p.first); @@ -251,7 +255,6 @@ void LedgerAcquire::trigger(Peer::ref peer) } if (p.first == tmBH.type()) { - theApp->getOPs().addWantedHash(p.second); ripple::TMIndexedObject *io = tmBH.add_objects(); io->set_hash(p.second.begin(), p.second.size()); } diff --git a/src/cpp/ripple/Peer.cpp b/src/cpp/ripple/Peer.cpp index 8727f9ae98..ed231fe4f6 100644 --- a/src/cpp/ripple/Peer.cpp +++ b/src/cpp/ripple/Peer.cpp @@ -1117,7 +1117,8 @@ void Peer::recvGetObjectByHash(ripple::TMGetObjectByHash& packet) } } } - cLog(lsDEBUG) << "GetObjByHash query: had " << reply.objects_size() << " of " << packet.objects_size(); + cLog(lsDEBUG) << "GetObjByHash query: had " << reply.objects_size() << " of " << packet.objects_size() + << " for " << getIP(); sendPacket(boost::make_shared(packet, ripple::mtGET_OBJECTS)); } else @@ -1151,6 +1152,8 @@ void Peer::recvGetObjectByHash(ripple::TMGetObjectByHash& packet) else theApp->getHashedObjectStore().store(type, seq, data, hash); } + else + cLog(lsWARNING) << "Received unwanted hash from peer " << getIP(); } } }