diff options
Diffstat (limited to 'src/textual.cc')
-rw-r--r-- | src/textual.cc | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/textual.cc b/src/textual.cc index 85b1a14b..dba31323 100644 --- a/src/textual.cc +++ b/src/textual.cc @@ -1096,6 +1096,14 @@ post_t * instance_t::parse_post(char * line, if (*p) { post->cost = amount_t(); + bool fixed_cost = false; + if (*p == '=') { + p++; + fixed_cost = true; + if (*p == '\0') + throw parse_error(_("Posting is missing a cost amount")); + } + beg = p - line; ptristream cstream(p, len - beg); @@ -1122,6 +1130,9 @@ post_t * instance_t::parse_post(char * line, post->cost->in_place_negate(); } + if (fixed_cost) + post->add_flags(POST_COST_FIXATED); + DEBUG("textual.parse", "line " << linenum << ": " << "Total cost is " << *post->cost); DEBUG("textual.parse", "line " << linenum << ": " |