diff options
-rw-r--r-- | src/format.cc | 10 | ||||
-rw-r--r-- | src/format.h | 6 |
2 files changed, 9 insertions, 7 deletions
diff --git a/src/format.cc b/src/format.cc index 335bbc52..70365e7f 100644 --- a/src/format.cc +++ b/src/format.cc @@ -198,16 +198,12 @@ format_t::element_t * format_t::parse_elements(const string& fmt) break; } - default: { + default: current->type = element_t::EXPR; - char buf[2]; - buf[0] = *p; - buf[1] = '\0'; - current->chars = buf; - current->expr.parse(buf); + current->chars = string(FMT_PREFIX) + *p; + current->expr.parse(current->chars); break; } - } } if (q != buf) { diff --git a/src/format.h b/src/format.h index f5d665c6..939d6a7e 100644 --- a/src/format.h +++ b/src/format.h @@ -150,6 +150,12 @@ public: const int account_abbrev_length = -1); }; +#define FMT_PREFIX "fmt_" +#define FMT_PREFIX_LEN 4 + +#define WANT_FMT() \ + (std::strncmp(p, FMT_PREFIX, FMT_PREFIX_LEN) == 0) + } // namespace ledger #endif // _FORMAT_H |