diff --git a/src/cpp/ripple/LedgerEntrySet.cpp b/src/cpp/ripple/LedgerEntrySet.cpp index 109638548..b7e414140 100644 --- a/src/cpp/ripple/LedgerEntrySet.cpp +++ b/src/cpp/ripple/LedgerEntrySet.cpp @@ -1394,7 +1394,7 @@ TER LedgerEntrySet::accountSend(const uint160& uSenderID, const uint160& uReceiv } } - if (sleReceiver) + if (tesSUCCESS == terResult && sleReceiver) { sleReceiver->setFieldAmount(sfBalance, sleReceiver->getFieldAmount(sfBalance) + saAmount); entryModify(sleReceiver); diff --git a/src/cpp/ripple/RippleCalc.cpp b/src/cpp/ripple/RippleCalc.cpp index f10c10e56..213923acf 100644 --- a/src/cpp/ripple/RippleCalc.cpp +++ b/src/cpp/ripple/RippleCalc.cpp @@ -2322,7 +2322,7 @@ TER RippleCalc::calcNodeAccountFwd( saCurDeliverAct = std::min(saCurDeliverAct, psCur.saInReq-psCur.saInAct); // Limit XRP by available. No limit for non-XRP as issuer. - if (!uCurrencyID) + if (uCurrencyID.isZero()) saCurDeliverAct = std::min(saCurDeliverAct, lesActive.accountHolds(uCurAccountID, CURRENCY_XRP, ACCOUNT_XRP)); }