diff options
Diffstat (limited to 'src/filters.cc')
-rw-r--r-- | src/filters.cc | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/filters.cc b/src/filters.cc index b19c36f1..4f49718b 100644 --- a/src/filters.cc +++ b/src/filters.cc @@ -190,8 +190,10 @@ void calc_xacts::operator()(xact_t& xact) if (last_xact && last_xact->has_xdata()) add_or_set_value(xdata.total, last_xact->xdata().total); - if (! xdata.has_flags(XACT_EXT_NO_TOTAL)) - xact.add_to_value(xdata.total); + if (! xdata.has_flags(XACT_EXT_NO_TOTAL)) { + bind_scope_t bound_scope(*amount_expr.get_context(), xact); + xdata.total += amount_expr.calc(); + } item_handler<xact_t>::operator()(xact); |