From e5941d5b23660da4a1c04cfff9e4e7c45f2334e4 Mon Sep 17 00:00:00 2001 From: Ed Hennis Date: Tue, 9 Sep 2025 16:29:35 -0400 Subject: [PATCH] Simplify flag exclusion check in LoanManage --- src/xrpld/app/tx/detail/LoanManage.cpp | 13 ++----------- 1 file changed, 2 insertions(+), 11 deletions(-) diff --git a/src/xrpld/app/tx/detail/LoanManage.cpp b/src/xrpld/app/tx/detail/LoanManage.cpp index a23c18c269..82cb00917c 100644 --- a/src/xrpld/app/tx/detail/LoanManage.cpp +++ b/src/xrpld/app/tx/detail/LoanManage.cpp @@ -64,17 +64,8 @@ LoanManage::preflight(PreflightContext const& ctx) return temINVALID; // Flags are mutually exclusive - int numFlags = 0; - for (auto const flag : { - tfLoanDefault, - tfLoanImpair, - tfLoanUnimpair, - }) - { - if (ctx.tx.isFlag(flag)) - ++numFlags; - } - if (numFlags > 1) + auto const flags = ctx.tx[sfFlags] & tfUniversalMask; + if ((flags & (flags - 1)) != 0) { JLOG(ctx.j.warn()) << "LoanManage: Only one of tfLoanDefault, tfLoanImpair, or "