fix reference count on governance hook

This commit is contained in:
Richard Holland
2023-09-23 15:38:34 +00:00
parent d568761fdf
commit a6b84caea2
2 changed files with 2 additions and 2 deletions

View File

@@ -604,7 +604,7 @@ Change::activateXahauGenesis()
hookDef->setFieldVL(sfCreateCode, wasmBytes);
hookDef->setFieldH256(sfHookSetTxnID, ctx_.tx.getTransactionID());
// governance hook is referenced by the l2tables
hookDef->setFieldU64(sfReferenceCount, (hookCount == 0 ? tables.size() : 0) + 1);
hookDef->setFieldU64(sfReferenceCount, (hookCount++ == 0 ? tables.size() : 0) + 1);
hookDef->setFieldAmount(sfFee,
XRPAmount {hook::computeExecutionFee(result->first)});
if (result->second > 0)

View File

@@ -170,7 +170,7 @@ struct XahauGenesis_test : public beast::unit_test::suite
auto const govVL = govSLE->getFieldVL(sfCreateCode);
BEAST_EXPECT(govHash == ripple::sha512Half_s(ripple::Slice(govVL.data(), govVL.size())));
BEAST_EXPECT(govSLE->getFieldU64(sfReferenceCount) == 1);
BEAST_EXPECT(govSLE->getFieldU64(sfReferenceCount) == 1 + XahauGenesis::L2Membership.size());
BEAST_EXPECT(govSLE->getFieldH256(sfHookOn) ==
ripple::uint256("FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7FFFFFFFFFFFFFFFFFFBFFFFF"));
BEAST_EXPECT(govSLE->getFieldH256(sfHookNamespace) ==