summaryrefslogtreecommitdiff
path: root/amount.cc
diff options
context:
space:
mode:
Diffstat (limited to 'amount.cc')
-rw-r--r--amount.cc6
1 files changed, 3 insertions, 3 deletions
diff --git a/amount.cc b/amount.cc
index d6724640..4d6a9754 100644
--- a/amount.cc
+++ b/amount.cc
@@ -173,7 +173,8 @@ amount * gmp_amount::value(amount * pr) const
else
new_amt->quantity_comm = quantity_comm;
- if (new_amt->quantity_comm->precision < MAX_PRECISION)
+ if (new_amt->quantity_comm &&
+ new_amt->quantity_comm->precision < MAX_PRECISION)
round(new_amt->quantity, new_amt->quantity,
new_amt->quantity_comm->precision);
@@ -288,8 +289,7 @@ bool gmp_amount::is_zero() const
{
mpz_t copy;
mpz_init_set(copy, quantity);
- assert(quantity_comm);
- if (quantity_comm->precision < MAX_PRECISION)
+ if (quantity_comm && quantity_comm->precision < MAX_PRECISION)
round(copy, copy, quantity_comm->precision);
bool zero = mpz_sgn(copy) == 0;
mpz_clear(copy);