diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2015-01-28 15:03:45 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2015-01-28 15:03:45 +0000 |
commit | b8a3bef0831e00e2921ed5feb59338efcca0984d (patch) | |
tree | ff08f642c8b68a7908a923cd1e512ab4cdfee54e /tbl_opts.c | |
parent | 3a4b4e867c202716bfdde346a8fe008f2a6edd3a (diff) | |
download | mandoc-b8a3bef0831e00e2921ed5feb59338efcca0984d.tar.gz |
For now, it can't be helped that mandoc tbl(7) ignores high-level macros,
but stop throwing away their arguments. This fixes information loss in a
handful of Xenocara manuals, at the price of a small amount of formatting
noise creeping through.
Diffstat (limited to 'tbl_opts.c')
-rw-r--r-- | tbl_opts.c | 8 |
1 files changed, 5 insertions, 3 deletions
@@ -120,17 +120,19 @@ arg(struct tbl_node *tbl, int ln, const char *p, int *pos, int key) * and some options are followed by arguments. */ void -tbl_option(struct tbl_node *tbl, int ln, const char *p) +tbl_option(struct tbl_node *tbl, int ln, const char *p, int *offs) { int i, pos, len; - pos = 0; + pos = *offs; for (;;) { while (p[pos] == ' ' || p[pos] == '\t' || p[pos] == ',') pos++; - if (p[pos] == ';') + if (p[pos] == ';') { + *offs = pos + 1; return; + } /* Parse one option name. */ |