From 2bb4501553500acce85859e02f2d2fc47229e5df Mon Sep 17 00:00:00 2001 From: Arthur Britto Date: Sun, 3 Mar 2013 23:01:19 -0800 Subject: [PATCH] Add tfMarket support to OfferCreate. --- src/cpp/ripple/OfferCreateTransactor.cpp | 2 ++ src/cpp/ripple/TransactionFormats.h | 3 ++- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/src/cpp/ripple/OfferCreateTransactor.cpp b/src/cpp/ripple/OfferCreateTransactor.cpp index d2acfe9250..e4b59be8c5 100644 --- a/src/cpp/ripple/OfferCreateTransactor.cpp +++ b/src/cpp/ripple/OfferCreateTransactor.cpp @@ -321,6 +321,7 @@ TER OfferCreateTransactor::doApply() cLog(lsWARNING) << "OfferCreate> " << mTxn.getJson(0); const uint32 uTxFlags = mTxn.getFlags(); const bool bPassive = isSetBit(uTxFlags, tfPassive); + const bool bMarket = isSetBit(uTxFlags, tfMarket); STAmount saTakerPays = mTxn.getFieldAmount(sfTakerPays); STAmount saTakerGets = mTxn.getFieldAmount(sfTakerGets); @@ -460,6 +461,7 @@ TER OfferCreateTransactor::doApply() if (tesSUCCESS != terResult || !saTakerPays // Wants nothing more. || !saTakerGets // Offering nothing more. + || bMarket // Do not persist. || !mEngine->getNodes().accountFunds(mTxnAccountID, saTakerGets).isPositive() // Not funded. || bUnfunded) // Consider unfunded. { diff --git a/src/cpp/ripple/TransactionFormats.h b/src/cpp/ripple/TransactionFormats.h index 7e69ce7416..a1c9161bb2 100644 --- a/src/cpp/ripple/TransactionFormats.h +++ b/src/cpp/ripple/TransactionFormats.h @@ -68,7 +68,8 @@ const uint32 tfAccountSetMask = ~(tfRequireDestTag|tfOptionalDestTag|tfRequireA // OfferCreate flags: const uint32 tfPassive = 0x00010000; -const uint32 tfOfferCreateMask = ~(tfPassive); +const uint32 tfMarket = 0x00020000; +const uint32 tfOfferCreateMask = ~(tfPassive|tfMarket); // Payment flags: const uint32 tfNoRippleDirect = 0x00010000;