From 9445a30e72f6e12147502fae2d2fefc6e7daef25 Mon Sep 17 00:00:00 2001 From: Nik Bougalis Date: Mon, 16 Mar 2015 22:25:45 -0700 Subject: [PATCH] Implement "Default Ripple" logic in LedgerEntrySet::checkState --- src/ripple/app/ledger/LedgerEntrySet.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/ripple/app/ledger/LedgerEntrySet.cpp b/src/ripple/app/ledger/LedgerEntrySet.cpp index aa361e767a..cb57895e9b 100644 --- a/src/ripple/app/ledger/LedgerEntrySet.cpp +++ b/src/ripple/app/ledger/LedgerEntrySet.cpp @@ -1730,7 +1730,9 @@ bool LedgerEntrySet::checkState ( // Sender is zero or negative. && (flags & (!bIssuerHigh ? lsfLowReserve : lsfHighReserve)) // Sender reserve is set. - && !(flags & (!bIssuerHigh ? lsfLowNoRipple : lsfHighNoRipple)) + && static_cast (flags & (!bIssuerHigh ? lsfLowNoRipple : lsfHighNoRipple)) != + static_cast (entryCache (ltACCOUNT_ROOT, + getAccountRootIndex (sender))->getFlags() & lsfDefaultRipple) && !(flags & (!bIssuerHigh ? lsfLowFreeze : lsfHighFreeze)) && !state->getFieldAmount ( !bIssuerHigh ? sfLowLimit : sfHighLimit)