Skip to content

Commit 82bb000

Browse files
committed
fix: restore XRPL_ASSERT for signer list invariants in checkMultiSign
Plain assert is compiled out in release builds, dropping these consensus-critical invariant checks in production.
1 parent e3e43ae commit 82bb000

File tree

1 file changed

+5
-2
lines changed

1 file changed

+5
-2
lines changed

src/xrpld/app/tx/detail/Transactor.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -837,8 +837,11 @@ Transactor::checkMultiSign(
837837
// We have plans to support multiple SignerLists in the future. The
838838
// presence and defaulted value of the SignerListID field will enable
839839
// that.
840-
assert(sleAllowedSigners->isFieldPresent(sfSignerListID));
841-
assert(sleAllowedSigners->getFieldU32(sfSignerListID) == 0);
840+
XRPL_ASSERT(
841+
sleAllowedSigners->isFieldPresent(sfSignerListID), "xrpl::Transactor::checkMultiSign : has signer list ID");
842+
XRPL_ASSERT(
843+
sleAllowedSigners->getFieldU32(sfSignerListID) == 0,
844+
"xrpl::Transactor::checkMultiSign : signer list ID is 0");
842845

843846
uint32_t const quorum = sleAllowedSigners->getFieldU32(sfSignerQuorum);
844847
uint32_t sum{0};

0 commit comments

Comments
 (0)