From 6a09b563633071b511967e410a3318dd0a23f98f Mon Sep 17 00:00:00 2001 From: Rose <83477269+AtariDreams@users.noreply.github.com> Date: Mon, 26 Sep 2022 10:09:17 -0400 Subject: [PATCH] Simplify ChangeConstants Since BASEX is a constant and radix is a uint32_t radix, there is nothing to be gained from having the limit be 64 bit. In addition, the g_ratio += !g_ratio only applies if g_ratio is 0, so I simplified that too. --- src/CalcManager/Ratpack/support.cpp | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/CalcManager/Ratpack/support.cpp b/src/CalcManager/Ratpack/support.cpp index ef9e4106..36077c7e 100644 --- a/src/CalcManager/Ratpack/support.cpp +++ b/src/CalcManager/Ratpack/support.cpp @@ -25,7 +25,7 @@ using namespace std; -void _readconstants(void); +void _readconstants(); #if defined(GEN_CONST) static int cbitsofprecision = 0; @@ -136,13 +136,14 @@ void ChangeConstants(uint32_t radix, int32_t precision) // in the internal BASEX radix, this is important for length calculations // in translating from radix to BASEX and back. - uint64_t limit = static_cast(BASEX) / static_cast(radix); + const uint32_t limit = BASEX / radix; g_ratio = 0; for (uint32_t digit = 1; digit < limit; digit *= radix) { g_ratio++; } - g_ratio += !g_ratio; + if (g_ratio == 0) + g_ratio = 1; // g_ratio is always at least 1 destroyrat(rat_nRadix); rat_nRadix = i32torat(radix);