diff --git a/src/ripple/app/tests/Env.cpp b/src/ripple/app/tests/Env.cpp index 6bf963753..04c7ee0db 100644 --- a/src/ripple/app/tests/Env.cpp +++ b/src/ripple/app/tests/Env.cpp @@ -160,7 +160,8 @@ Env::submit (JTx const& tx) bool didApply; if (stx) { - TransactionEngine txe (ledger, multisign); + TransactionEngine txe (ledger, + tx_enable_test); std::tie(ter, didApply) = txe.applyTransaction( *stx, tapOPEN_LEDGER | (true ? tapNONE : tapNO_CHECK_SIGN)); diff --git a/src/ripple/app/tx/TransactionEngine.h b/src/ripple/app/tx/TransactionEngine.h index 20b879eb0..f50956f62 100644 --- a/src/ripple/app/tx/TransactionEngine.h +++ b/src/ripple/app/tx/TransactionEngine.h @@ -30,8 +30,8 @@ namespace ripple { // A TransactionEngine applies serialized transactions to a ledger // It can also, verify signatures, verify fees, and give rejection reasons -struct multisign_t { multisign_t() { } }; -static multisign_t const multisign; +struct tx_enable_test_t { tx_enable_test_t() { } }; +static tx_enable_test_t const tx_enable_test; // One instance per ledger. // Only one transaction applied at a time. @@ -45,8 +45,17 @@ private: false; #endif + bool enableTickets_ = +#if RIPPLE_ENABLE_TICKETS + true; +#else + false; +#endif + boost::optional mNodes; + void txnWrite(); + protected: Ledger::pointer mLedger; int mTxnSeq = 0; @@ -61,8 +70,10 @@ public: assert (mLedger); } - TransactionEngine (Ledger::ref ledger, multisign_t) + TransactionEngine (Ledger::ref ledger, + tx_enable_test_t) : enableMultiSign_(true) + , enableTickets_(true) , mLedger (ledger) { assert (mLedger); @@ -74,6 +85,12 @@ public: return enableMultiSign_; } + bool + enableTickets() const + { + return enableTickets_; + } + LedgerEntrySet& view () { diff --git a/src/ripple/app/tx/impl/CancelTicket.cpp b/src/ripple/app/tx/impl/CancelTicket.cpp index 255e2af83..64b7e727b 100644 --- a/src/ripple/app/tx/impl/CancelTicket.cpp +++ b/src/ripple/app/tx/impl/CancelTicket.cpp @@ -93,11 +93,9 @@ transact_CancelTicket ( TransactionEngineParams params, TransactionEngine* engine) { -#if RIPPLE_ENABLE_TICKETS - return CancelTicket (txn, params, engine).apply (); -#else - return temDISABLED; -#endif + if (! engine->enableTickets()) + return temDISABLED; + return CancelTicket (txn, params, engine).apply(); } diff --git a/src/ripple/app/tx/impl/CreateTicket.cpp b/src/ripple/app/tx/impl/CreateTicket.cpp index d1dbf548d..cf2eace6c 100644 --- a/src/ripple/app/tx/impl/CreateTicket.cpp +++ b/src/ripple/app/tx/impl/CreateTicket.cpp @@ -145,11 +145,9 @@ transact_CreateTicket ( TransactionEngineParams params, TransactionEngine* engine) { -#if RIPPLE_ENABLE_TICKETS + if (! engine->enableTickets()) + return temDISABLED; return CreateTicket (txn, params, engine).apply (); -#else - return temDISABLED; -#endif } }