diff --git a/src/ripple/app/misc/FeeVoteImpl.cpp b/src/ripple/app/misc/FeeVoteImpl.cpp index 49a6caaf7b..6669eea2af 100644 --- a/src/ripple/app/misc/FeeVoteImpl.cpp +++ b/src/ripple/app/misc/FeeVoteImpl.cpp @@ -202,6 +202,7 @@ FeeVoteImpl::doVoting (Ledger::ref lastClosedLedger, std::uint32_t const baseReserve = baseReserveVote.getVotes (); std::uint32_t const incReserve = incReserveVote.getVotes (); std::uint32_t const feeUnits = target_.reference_fee_units; + auto const seq = lastClosedLedger->info().seq + 1; // add transactions to our position if ((baseFee != lastClosedLedger->fees().base) || @@ -214,9 +215,10 @@ FeeVoteImpl::doVoting (Ledger::ref lastClosedLedger, "/" << incReserve; STTx feeTx (ttFEE, - [baseFee,baseReserve,incReserve,feeUnits](auto& obj) + [seq,baseFee,baseReserve,incReserve,feeUnits](auto& obj) { obj[sfAccount] = AccountID(); + obj[sfLedgerSequence] = seq; obj[sfBaseFee] = baseFee; obj[sfReserveBase] = baseReserve; obj[sfReserveIncrement] = incReserve; diff --git a/src/ripple/protocol/impl/TxFormats.cpp b/src/ripple/protocol/impl/TxFormats.cpp index 6ca6a66f41..85e213b836 100644 --- a/src/ripple/protocol/impl/TxFormats.cpp +++ b/src/ripple/protocol/impl/TxFormats.cpp @@ -86,7 +86,7 @@ TxFormats::TxFormats () SOElement (sfOfferSequence, SOE_REQUIRED); add ("EnableAmendment", ttAMENDMENT) - << SOElement (sfLedgerSequence, SOE_OPTIONAL) + << SOElement (sfLedgerSequence, SOE_REQUIRED) << SOElement (sfAmendment, SOE_REQUIRED) ;