From cbf2c87d7ceb248f772cf3cda8e8f2d84b1442e5 Mon Sep 17 00:00:00 2001 From: Ed Hennis Date: Thu, 16 Jul 2026 18:59:26 -0400 Subject: [PATCH] Fix a couple of issues: fix error check, remove incorrect test --- src/libxrpl/basics/Number.cpp | 4 ++-- src/test/protocol/STNumber_test.cpp | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/libxrpl/basics/Number.cpp b/src/libxrpl/basics/Number.cpp index eb3e21dbf1..d3b02c18c8 100644 --- a/src/libxrpl/basics/Number.cpp +++ b/src/libxrpl/basics/Number.cpp @@ -429,10 +429,10 @@ Number::Guard::doDropDigitWithTarget(T& mantissa, int& exponent, int const targe { XRPL_ASSERT( targetExponent > exponent, "Number::Guard::doDropDigitWithTarget : something to do"); - if (mantissa == 0 && unrecoverable() && targetExponent >= exponent) + if (mantissa == 0 && unrecoverable() && targetExponent > exponent) { // No number of dropped digits is going to change any of the operative parameters at this - // point + // point. exponent = targetExponent; return; } diff --git a/src/test/protocol/STNumber_test.cpp b/src/test/protocol/STNumber_test.cpp index 7dd296806d..0466616632 100644 --- a/src/test/protocol/STNumber_test.cpp +++ b/src/test/protocol/STNumber_test.cpp @@ -185,14 +185,16 @@ struct STNumber_test : public beast::unit_test::Suite } catch (std::exception const& e) { - BEAST_EXPECT(std::string(e.what()) == expected); + std::ostringstream out; + out << "Json: " << num.asString() << " got exception: " << e.what() + << ", expected: " << expected; + BEAST_EXPECTS(std::string(e.what()) == expected, out.str()); } }; // Obvious overflows tested here expectJsonThrows("1e2000000", "Number::normalize 2"); expectJsonThrows("1e2000000000", "Number::normalize 2"); - expectJsonThrows("1e2000000000000", "Number::normalize 2"); // Obvious non-numbers tested here expectJsonThrows("", "'' is not a number");