diff options
-rw-r--r-- | src/account.cc | 2 | ||||
-rw-r--r-- | src/expr.h | 6 |
2 files changed, 5 insertions, 3 deletions
diff --git a/src/account.cc b/src/account.cc index 376097f2..fd1bf2e5 100644 --- a/src/account.cc +++ b/src/account.cc @@ -262,7 +262,9 @@ void account_t::calculate_sums(expr_t& amount_expr, bind_scope_t bound_scope(scope, *this); call_scope_t args(bound_scope); + value_t amount(amount_expr.calc(args)); + if (! amount.is_null()) { add_or_set_value(xd.total, amount); xd.total_count += xd.count; @@ -128,13 +128,13 @@ public: bool is_constant() const; bool is_function() const; - value_t& constant_value(); + value_t& constant_value(); const value_t& constant_value() const; function_t& get_function(); - void print(std::ostream& out) const; - void dump(std::ostream& out) const; + void print(std::ostream& out) const; + void dump(std::ostream& out) const; static value_t eval(const string& _expr, scope_t& scope); }; |