diff --git a/src/test/app/EscrowSmart_test.cpp b/src/test/app/EscrowSmart_test.cpp index 5bbae451b3..b7cd48d242 100644 --- a/src/test/app/EscrowSmart_test.cpp +++ b/src/test/app/EscrowSmart_test.cpp @@ -390,7 +390,7 @@ struct EscrowSmart_test : public beast::unit_test::suite // Tests whether the ledger index is >= 5 // getLedgerSqn() >= 5} auto const& wasmHex = ledgerSqnWasmHex; - std::uint32_t const allowance = 5; + std::uint32_t const allowance = 65; auto escrowCreate = escrow::create(alice, carol, XRP(1000)); auto [createFee, finishFee] = [&]() { Env env(*this, features); @@ -683,7 +683,7 @@ struct EscrowSmart_test : public beast::unit_test::suite { env.require(balance(alice, XRP(4000) - txnFees)); - auto const allowance = 14; + auto const allowance = 1014; XRPAmount const finishFee = env.current()->fees().base + (allowance * env.current()->fees().gasPrice) / MICRO_DROPS_PER_DROP + @@ -778,7 +778,7 @@ struct EscrowSmart_test : public beast::unit_test::suite auto const txMeta = env.meta(); if (BEAST_EXPECT(txMeta && txMeta->isFieldPresent(sfGasUsed))) BEAST_EXPECTS( - txMeta->getFieldU32(sfGasUsed) == 794, + txMeta->getFieldU32(sfGasUsed) == 38'554, std::to_string(txMeta->getFieldU32(sfGasUsed))); if (BEAST_EXPECT(txMeta->isFieldPresent(sfWasmReturnCode))) BEAST_EXPECT(txMeta->getFieldI32(sfWasmReturnCode) == 1); @@ -863,7 +863,7 @@ struct EscrowSmart_test : public beast::unit_test::suite env.close(); env.close(); - auto const allowance = 2'985; + auto const allowance = 138'485; auto const finishFee = env.current()->fees().base + (allowance * env.current()->fees().gasPrice) / MICRO_DROPS_PER_DROP + diff --git a/src/xrpld/app/tx/detail/Escrow.cpp b/src/xrpld/app/tx/detail/Escrow.cpp index 5dd7b486c3..2fd44b33cb 100644 --- a/src/xrpld/app/tx/detail/Escrow.cpp +++ b/src/xrpld/app/tx/detail/Escrow.cpp @@ -217,9 +217,8 @@ EscrowCreate::preflight(PreflightContext const& ctx) return temMALFORMED; } - HostFunctions mock; - auto const re = - preflightEscrowWasm(code, ESCROW_FUNCTION_NAME, {}, &mock, ctx.j); + HostFunctions mock(ctx.j); + auto const re = preflightEscrowWasm(code, mock, ESCROW_FUNCTION_NAME); if (!isTesSuccess(re)) { JLOG(ctx.j.debug()) << "EscrowCreate.FinishFunction bad WASM"; @@ -1214,7 +1213,7 @@ EscrowFinish::doApply() } std::uint32_t allowance = ctx_.tx[sfComputationAllowance]; auto re = runEscrowWasm( - wasm, ESCROW_FUNCTION_NAME, {}, &ledgerDataProvider, allowance); + wasm, ledgerDataProvider, ESCROW_FUNCTION_NAME, {}, allowance); JLOG(j_.trace()) << "Escrow WASM ran"; if (auto const& data = ledgerDataProvider.getData(); data.has_value())