Fix ripple bugs.

- Default send max inherits source account as issuer.
- Add end point implications for node expansion.
- Fix rippling through accounts.
This commit is contained in:
Arthur Britto
2012-11-03 04:16:48 -07:00
parent 4adb0e07a2
commit 7c595bf23b
3 changed files with 101 additions and 53 deletions

View File

@@ -462,7 +462,11 @@ TER TransactionEngine::doPayment(const SerializedTransaction& txn, const Transac
const bool bMax = txn.isFieldPresent(sfSendMax);
const uint160 uDstAccountID = txn.getFieldAccount160(sfDestination);
const STAmount saDstAmount = txn.getFieldAmount(sfAmount);
const STAmount saMaxAmount = bMax ? txn.getFieldAmount(sfSendMax) : saDstAmount;
const STAmount saMaxAmount = bMax
? txn.getFieldAmount(sfSendMax)
: saDstAmount.isNative()
? saDstAmount
: STAmount(saDstAmount.getCurrency(), mTxnAccountID, saDstAmount.getMantissa(), saDstAmount.getExponent(), saDstAmount.isNegative());
const uint160 uSrcCurrency = saMaxAmount.getCurrency();
const uint160 uDstCurrency = saDstAmount.getCurrency();