summaryrefslogtreecommitdiff
path: root/src/amount.h
diff options
context:
space:
mode:
authorMax Nikulin <manikulin@gmail.com>2024-08-06 16:10:12 +0700
committerJohn Wiegley <johnw@newartisans.com>2024-08-06 10:40:04 -1000
commitb7be0a1fedfeec26e4b7d35357157d5a9209f3ee (patch)
treefb1584ca7ce34cbb38d34e9ecd4ad84659dfb538 /src/amount.h
parent28ae2eaccb58e539dfd8f8533508a8edfe8bb027 (diff)
downloadfork-ledger-b7be0a1fedfeec26e4b7d35357157d5a9209f3ee.tar.gz
fork-ledger-b7be0a1fedfeec26e4b7d35357157d5a9209f3ee.tar.bz2
fork-ledger-b7be0a1fedfeec26e4b7d35357157d5a9209f3ee.zip
Fix copy on write for amount_t::in_place_roundto
- Copy amount quantity before rounding. - Fix `amount_t::roundto(int)`. - Transform `balance/testRound` into `balance/testRoundto`. It was a mix of `round` and `roundto` operation with unclear purpose and was relying on `in_place_roundto` behavior modifying all copies. There is no unit tests for balance `round` and `unround` any more. Closes #2362
Diffstat (limited to 'src/amount.h')
-rw-r--r--src/amount.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/amount.h b/src/amount.h
index 7abaa1c9..5638abc9 100644
--- a/src/amount.h
+++ b/src/amount.h
@@ -347,7 +347,7 @@ public:
amount_t roundto(int places) const {
amount_t temp(*this);
- temp.in_place_round();
+ temp.in_place_roundto(places);
return temp;
}
void in_place_roundto(int places);