diff --git a/src/ripple/module/app/ledger/Ledger.cpp b/src/ripple/module/app/ledger/Ledger.cpp index bfb15ef5c..7a6c6c8a6 100644 --- a/src/ripple/module/app/ledger/Ledger.cpp +++ b/src/ripple/module/app/ledger/Ledger.cpp @@ -1216,7 +1216,8 @@ Json::Value Ledger::getJson (int options) std::placeholders::_1)); else mAccountStateMap->visitLeaves( - std::bind(stateItemTagAppender, state, std::placeholders::_1)); + std::bind(stateItemTagAppender, std::ref(state), + std::placeholders::_1)); } return ledger; diff --git a/src/ripple/module/app/paths/CalcNodeDeliverRev.cpp b/src/ripple/module/app/paths/CalcNodeDeliverRev.cpp index 52b808319..3b554b4e7 100644 --- a/src/ripple/module/app/paths/CalcNodeDeliverRev.cpp +++ b/src/ripple/module/app/paths/CalcNodeDeliverRev.cpp @@ -51,6 +51,11 @@ TER nodeDeliverRev ( auto& previousNode = pathState.nodes()[nodeIndex - 1]; auto& node = pathState.nodes()[nodeIndex]; + if (bMultiQuality) + node.currentDirectory_ = 0; // Restart book searching. + else + node.bDirectRestart = true; // Restart at same quality. + STAmount& saPrvDlvReq = previousNode.saRevDeliver; // Accumulation of what the previous node must deliver.