diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2015-04-19 20:35:20 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2015-04-19 20:35:20 +0000 |
commit | adb61c0917d43d6cf61cc003e0b829293f796ec6 (patch) | |
tree | 9e65062c702eceb7a3d8f1e93852b65f12167055 | |
parent | e18dbd74bdc94bba48047a6551e73170b54e8ed1 (diff) | |
download | mandoc-adb61c0917d43d6cf61cc003e0b829293f796ec6.tar.gz |
More than one data field may follow T} on the same input line.
Issue found by Christian Neukirchen <chneukirchen at gmail dot com>
in the socket(2) manual on Linux.
Also fixes major rendering bugs (including partial loss of content)
in XkbChangeControls(3), XkbFreeClientMap(3), XkbGetMap(3),
XkbKeyNumGroups(3), and XkbSetMap(3).
-rw-r--r-- | tbl_data.c | 3 |
1 files changed, 2 insertions, 1 deletions
@@ -132,7 +132,8 @@ tbl_cdata(struct tbl_node *tbl, int ln, const char *p, int pos) if (p[pos] == tbl->opts.tab) { tbl->part = TBL_PART_DATA; pos++; - getdata(tbl, tbl->last_span, ln, p, &pos); + while (p[pos] != '\0') + getdata(tbl, tbl->last_span, ln, p, &pos); return(1); } else if (p[pos] == '\0') { tbl->part = TBL_PART_DATA; |