summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorChristoph Dittmann <github@christoph-d.de>2018-06-09 21:57:39 +0100
committerChristoph Dittmann <github@christoph-d.de>2018-06-09 23:47:49 +0100
commit6853464fd0c4a0428540edc635f1257cfb534bcd (patch)
treea83265b4107befc5299c21f1198694f5a6bcee51 /src
parente3fa7e9d89c17c69a163dfb031436ca8830f6562 (diff)
downloadfork-ledger-6853464fd0c4a0428540edc635f1257cfb534bcd.tar.gz
fork-ledger-6853464fd0c4a0428540edc635f1257cfb534bcd.tar.bz2
fork-ledger-6853464fd0c4a0428540edc635f1257cfb534bcd.zip
Make automated transactions work with assertions
This fixes issue #1127. In my understanding, PR #552 was meant to fix this, but was incomplete. Without this patch, automated transactions are invisible to assertions. This patch fixes this by adding a flag to the account to tell it that there is a new posting, analogous to the behavior of finalize(). I dug up issue #1127 too late to find that this is the same solution proposed by @tbm. Although I wrote this independently, credit goes to Martin Michlmayr (@tbm).
Diffstat (limited to 'src')
-rw-r--r--src/xact.cc3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/xact.cc b/src/xact.cc
index c62974df..5df9ebc5 100644
--- a/src/xact.cc
+++ b/src/xact.cc
@@ -806,8 +806,9 @@ void auto_xact_t::extend_xact(xact_base_t& xact, parse_context_t& context)
xact.add_post(new_post);
new_post->account->add_post(new_post);
- // Add flag so this post updates the account balance
+ // Add flags so this post updates the account balance
new_post->xdata().add_flags(POST_EXT_VISITED);
+ new_post->account->xdata().add_flags(ACCOUNT_EXT_VISITED);
if (new_post->must_balance())
needs_further_verification = true;