diff --git a/src/cpp/ripple/LedgerEntrySet.cpp b/src/cpp/ripple/LedgerEntrySet.cpp index 07996a19c..3fdedb4d6 100644 --- a/src/cpp/ripple/LedgerEntrySet.cpp +++ b/src/cpp/ripple/LedgerEntrySet.cpp @@ -1006,7 +1006,7 @@ uint32 LedgerEntrySet::rippleQualityIn(const uint160& uToAccountID, const uint16 // Return how much of uIssuerID's uCurrencyID IOUs that uAccountID holds. May be negative. // <-- IOU's uAccountID has of uIssuerID. -STAmount LedgerEntrySet::rippleHolds(const uint160& uAccountID, const uint160& uCurrencyID, const uint160& uIssuerID, bool bAvail) +STAmount LedgerEntrySet::rippleHolds(const uint160& uAccountID, const uint160& uCurrencyID, const uint160& uIssuerID) { STAmount saBalance; SLE::pointer sleRippleState = entryCache(ltRIPPLE_STATE, Ledger::getRippleStateIndex(uAccountID, uIssuerID, uCurrencyID)); @@ -1017,30 +1017,14 @@ STAmount LedgerEntrySet::rippleHolds(const uint160& uAccountID, const uint160& u } else if (uAccountID > uIssuerID) { - if (false && bAvail) - { - saBalance = sleRippleState->getFieldAmount(sfLowLimit); - saBalance -= sleRippleState->getFieldAmount(sfBalance); - } - else - { - saBalance = sleRippleState->getFieldAmount(sfBalance); - saBalance.negate(); // Put balance in uAccountID terms. - } + saBalance = sleRippleState->getFieldAmount(sfBalance); + saBalance.negate(); // Put balance in uAccountID terms. saBalance.setIssuer(uIssuerID); } else { - if (false && bAvail) - { - saBalance = sleRippleState->getFieldAmount(sfHighLimit); - saBalance += sleRippleState->getFieldAmount(sfBalance); - } - else - { - saBalance = sleRippleState->getFieldAmount(sfBalance); - } + saBalance = sleRippleState->getFieldAmount(sfBalance); saBalance.setIssuer(uIssuerID); } @@ -1049,7 +1033,7 @@ STAmount LedgerEntrySet::rippleHolds(const uint160& uAccountID, const uint160& u } // <-- saAmount: amount of uCurrencyID held by uAccountID. May be negative. -STAmount LedgerEntrySet::accountHolds(const uint160& uAccountID, const uint160& uCurrencyID, const uint160& uIssuerID, bool bAvail) +STAmount LedgerEntrySet::accountHolds(const uint160& uAccountID, const uint160& uCurrencyID, const uint160& uIssuerID) { STAmount saAmount; @@ -1071,13 +1055,12 @@ STAmount LedgerEntrySet::accountHolds(const uint160& uAccountID, const uint160& } else { - saAmount = rippleHolds(uAccountID, uCurrencyID, uIssuerID, bAvail); + saAmount = rippleHolds(uAccountID, uCurrencyID, uIssuerID); } - cLog(lsINFO) << boost::str(boost::format("accountHolds: uAccountID=%s saAmount=%s bAvail=%d") + cLog(lsINFO) << boost::str(boost::format("accountHolds: uAccountID=%s saAmount=%s") % RippleAddress::createHumanAccountID(uAccountID) - % saAmount.getFullText() - % bAvail); + % saAmount.getFullText()); return saAmount; } @@ -1086,10 +1069,9 @@ STAmount LedgerEntrySet::accountHolds(const uint160& uAccountID, const uint160& // Use when you need a default for rippling uAccountID's currency. // XXX Should take into account quality? // --> saDefault/currency/issuer -// --> bAvail: true to include going into debt. // <-- saFunds: Funds available. May be negative. // If the issuer is the same as uAccountID, funds are unlimited, use result is saDefault. -STAmount LedgerEntrySet::accountFunds(const uint160& uAccountID, const STAmount& saDefault, bool bAvail) +STAmount LedgerEntrySet::accountFunds(const uint160& uAccountID, const STAmount& saDefault) { STAmount saFunds; @@ -1103,13 +1085,12 @@ STAmount LedgerEntrySet::accountFunds(const uint160& uAccountID, const STAmount& } else { - saFunds = accountHolds(uAccountID, saDefault.getCurrency(), saDefault.getIssuer(), bAvail); + saFunds = accountHolds(uAccountID, saDefault.getCurrency(), saDefault.getIssuer()); - cLog(lsINFO) << boost::str(boost::format("accountFunds: uAccountID=%s saDefault=%s saFunds=%s bAvail=%d") + cLog(lsINFO) << boost::str(boost::format("accountFunds: uAccountID=%s saDefault=%s saFunds=%s") % RippleAddress::createHumanAccountID(uAccountID) % saDefault.getFullText() - % saFunds.getFullText() - % bAvail); + % saFunds.getFullText()); } return saFunds; diff --git a/src/cpp/ripple/LedgerEntrySet.h b/src/cpp/ripple/LedgerEntrySet.h index 4ac46e6b9..15747a493 100644 --- a/src/cpp/ripple/LedgerEntrySet.h +++ b/src/cpp/ripple/LedgerEntrySet.h @@ -119,13 +119,13 @@ public: uint32 rippleQualityOut(const uint160& uToAccountID, const uint160& uFromAccountID, const uint160& uCurrencyID) { return rippleQualityIn(uToAccountID, uFromAccountID, uCurrencyID, sfLowQualityOut, sfHighQualityOut); } - STAmount rippleHolds(const uint160& uAccountID, const uint160& uCurrencyID, const uint160& uIssuerID, bool bAvail=false); + STAmount rippleHolds(const uint160& uAccountID, const uint160& uCurrencyID, const uint160& uIssuerID); STAmount rippleTransferFee(const uint160& uSenderID, const uint160& uReceiverID, const uint160& uIssuerID, const STAmount& saAmount); TER rippleCredit(const uint160& uSenderID, const uint160& uReceiverID, const STAmount& saAmount, bool bCheckIssuer=true); TER rippleSend(const uint160& uSenderID, const uint160& uReceiverID, const STAmount& saAmount, STAmount& saActual); - STAmount accountHolds(const uint160& uAccountID, const uint160& uCurrencyID, const uint160& uIssuerID, bool bAvail=false); - STAmount accountFunds(const uint160& uAccountID, const STAmount& saDefault, bool bAvail=false); + STAmount accountHolds(const uint160& uAccountID, const uint160& uCurrencyID, const uint160& uIssuerID); + STAmount accountFunds(const uint160& uAccountID, const STAmount& saDefault); TER accountSend(const uint160& uSenderID, const uint160& uReceiverID, const STAmount& saAmount); TER trustCreate( diff --git a/src/cpp/ripple/OfferCreateTransactor.cpp b/src/cpp/ripple/OfferCreateTransactor.cpp index fc3d21529..ec6b9192b 100644 --- a/src/cpp/ripple/OfferCreateTransactor.cpp +++ b/src/cpp/ripple/OfferCreateTransactor.cpp @@ -117,8 +117,8 @@ TER OfferCreateTransactor::takeOffers( cLog(lsINFO) << "takeOffers: saOfferPays=" << saOfferPays.getFullText(); - STAmount saOfferFunds = mEngine->getNodes().accountFunds(uOfferOwnerID, saOfferPays, true); - STAmount saTakerFunds = mEngine->getNodes().accountFunds(uTakerAccountID, saTakerPays, true); + STAmount saOfferFunds = mEngine->getNodes().accountFunds(uOfferOwnerID, saOfferPays); + STAmount saTakerFunds = mEngine->getNodes().accountFunds(uTakerAccountID, saTakerPays); SLE::pointer sleOfferAccount; // Owner of offer. if (!saOfferFunds.isPositive()) @@ -327,7 +327,7 @@ TER OfferCreateTransactor::doApply() terResult = temBAD_ISSUER; } - else if (!mEngine->getNodes().accountFunds(mTxnAccountID, saTakerGets, true).isPositive()) + else if (!mEngine->getNodes().accountFunds(mTxnAccountID, saTakerGets).isPositive()) { cLog(lsWARNING) << "doOfferCreate: delay: Offers must be at least partially funded."; @@ -387,7 +387,7 @@ TER OfferCreateTransactor::doApply() cLog(lsWARNING) << "doOfferCreate: takeOffers: saTakerPays=" << saTakerPays.getFullText(); cLog(lsWARNING) << "doOfferCreate: takeOffers: saTakerGets=" << saTakerGets.getFullText(); cLog(lsWARNING) << "doOfferCreate: takeOffers: mTxnAccountID=" << RippleAddress::createHumanAccountID(mTxnAccountID); - cLog(lsWARNING) << "doOfferCreate: takeOffers: FUNDS=" << mEngine->getNodes().accountFunds(mTxnAccountID, saTakerGets, true).getFullText(); + cLog(lsWARNING) << "doOfferCreate: takeOffers: FUNDS=" << mEngine->getNodes().accountFunds(mTxnAccountID, saTakerGets).getFullText(); // cLog(lsWARNING) << "doOfferCreate: takeOffers: uPaysIssuerID=" << RippleAddress::createHumanAccountID(uPaysIssuerID); // cLog(lsWARNING) << "doOfferCreate: takeOffers: uGetsIssuerID=" << RippleAddress::createHumanAccountID(uGetsIssuerID); @@ -395,7 +395,7 @@ TER OfferCreateTransactor::doApply() if (tesSUCCESS != terResult || !saTakerPays // Wants nothing more. || !saTakerGets // Offering nothing more. - || !mEngine->getNodes().accountFunds(mTxnAccountID, saTakerGets, true).isPositive()) // Not funded. + || !mEngine->getNodes().accountFunds(mTxnAccountID, saTakerGets).isPositive()) // Not funded. { // Complete as is. nothing();