diff options
-rw-r--r-- | src/reconcile.cc | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/src/reconcile.cc b/src/reconcile.cc index 9b965ac4..2c95023d 100644 --- a/src/reconcile.cc +++ b/src/reconcile.cc @@ -44,11 +44,16 @@ static bool search_for_balance(amount_t& amount, *prev = next; amount -= next->amount; + if (! amount) { - transaction_xdata(*next).ptr = NULL; + *xact_next_ptr(next) = NULL; return true; - } else if (search_for_balance(amount, xact_next_ptr(next), xact_next(next))) + } + else if (search_for_balance(amount, xact_next_ptr(next), xact_next(next))) + { return true; + } + amount += next->amount; *prev = temp; |