summaryrefslogtreecommitdiff
path: root/src/emacs.cc
diff options
context:
space:
mode:
authorJohn Wiegley <johnw@newartisans.com>2010-05-22 13:18:25 -0400
committerJohn Wiegley <johnw@newartisans.com>2010-05-22 21:34:58 -0400
commit8d4de7783666e901538a0cbaa716400ef95e408d (patch)
treedf273e9fb9ef3c137823cd8a719b49c1e60817a7 /src/emacs.cc
parent57abfd7ef8b4500b7a0c14d136d397ecf974163b (diff)
downloadfork-ledger-8d4de7783666e901538a0cbaa716400ef95e408d.tar.gz
fork-ledger-8d4de7783666e901538a0cbaa716400ef95e408d.tar.bz2
fork-ledger-8d4de7783666e901538a0cbaa716400ef95e408d.zip
emacs command was referencing uninitialized values
Fixes 7B54CF80-45A4-4D50-A8D3-63272D60FA1B
Diffstat (limited to 'src/emacs.cc')
-rw-r--r--src/emacs.cc19
1 files changed, 13 insertions, 6 deletions
diff --git a/src/emacs.cc b/src/emacs.cc
index d47f04ad..3c8bb256 100644
--- a/src/emacs.cc
+++ b/src/emacs.cc
@@ -40,18 +40,21 @@ namespace ledger {
void format_emacs_posts::write_xact(xact_t& xact)
{
- out << "\"" << xact.pos->pathname << "\" "
- << xact.pos->beg_line << " ";
+ if (xact.pos)
+ out << "\"" << xact.pos->pathname << "\" "
+ << xact.pos->beg_line << " ";
+ else
+ out << "\"\" " << -1 << " ";
tm when = gregorian::to_tm(xact.date());
std::time_t date = std::mktime(&when);
out << "(" << (date / 65536) << " " << (date % 65536) << " 0) ";
- if (! xact.code)
- out << "nil ";
- else
+ if (xact.code)
out << "\"" << *xact.code << "\" ";
+ else
+ out << "nil ";
if (xact.payee.empty())
out << "nil";
@@ -77,7 +80,11 @@ void format_emacs_posts::operator()(post_t& post)
out << "\n";
}
- out << " (" << post.pos->beg_line << " ";
+ if (post.pos)
+ out << " (" << post.pos->beg_line << " ";
+ else
+ out << " (" << -1 << " ";
+
out << "\"" << post.reported_account()->fullname() << "\" \""
<< post.amount << "\"";