commit 5083da8006ec0fd45b5791063846f5925212d212 parent e79881cbdeba3c776c9a5f296e05d70b5a7dde0b Author: Marc Stibane <marc@taler.net> Date: Thu, 16 Nov 2023 01:59:19 +0100 Bugfix: Arithmetic error Diffstat:
| M | taler-swift/Sources/taler-swift/Amount.swift | | | 7 | ++++--- |
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git a/taler-swift/Sources/taler-swift/Amount.swift b/taler-swift/Sources/taler-swift/Amount.swift @@ -127,11 +127,12 @@ public final class Amount: Codable, Hashable, @unchecked Sendable, CustomStringC if fraction == 0 { return String(integer) } else { - var frac = fraction + var frac = UInt64(fraction) + let base = UInt64(fractionalBase()) var fracStr = "" while (frac > 0) { - fracStr += String(frac / (fractionalBase() / 10)) - frac = (frac * 10) % fractionalBase() + fracStr += String(frac / ( base / 10)) + frac = (frac * 10) % base } return "\(integer)\(Self.decimalSeparator)\(fracStr)" }