From ae50bf34aa0029a2b9f06370eefd2a5af3dd7b80 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Fri, 12 Jul 2013 00:11:27 -0700 Subject: [PATCH] Fix a case where we timeout for no reason. --- src/cpp/ripple/ripple_InboundLedger.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/cpp/ripple/ripple_InboundLedger.cpp b/src/cpp/ripple/ripple_InboundLedger.cpp index b25cfc20b..8f00910b1 100644 --- a/src/cpp/ripple/ripple_InboundLedger.cpp +++ b/src/cpp/ripple/ripple_InboundLedger.cpp @@ -153,6 +153,18 @@ void InboundLedger::onTimer (bool progress) if (!progress) { + if (isDone()) + { + WriteLog (lsINFO, InboundLedger) << "Already done " << mHash; + return; + } + checkLocal(); + if (isDone()) + { + WriteLog (lsINFO, InboundLedger) << "Completed fetch " << mHash; + return; + } + mAggressive = true; mByHash = true; int pc = getPeerCount ();