From 3d1973ffce60279bff4ec548c2c90f4d1d31f1a2 Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Tue, 27 Jan 2015 05:21:44 +0000 Subject: Multiple parser and formatter fixes for line drawing in tbl(7). * Allow mixing vertical line bars with the layout options of the preceding layout cell. * Correctly combine box options with layout lines. * Correctly print vertical lines in data rows, with the right spacing. * Correctly print cross markers and left and right ends of horizontal lines even if vertical lines differ above and below. * Avoid the bogus error message "no table data cells" when a table data section starts with a horizontal line. No increase in code size. --- tbl.c | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'tbl.c') diff --git a/tbl.c b/tbl.c index 20ccb389..7019f4d2 100644 --- a/tbl.c +++ b/tbl.c @@ -173,11 +173,15 @@ void tbl_end(struct tbl_node **tblp) { struct tbl_node *tbl; + struct tbl_span *sp; tbl = *tblp; *tblp = NULL; - if (NULL == tbl->first_span || NULL == tbl->first_span->first) + sp = tbl->first_span; + while (sp != NULL && sp->first == NULL) + sp = sp->next; + if (sp == NULL) mandoc_msg(MANDOCERR_TBLNODATA, tbl->parse, tbl->line, tbl->pos, NULL); -- cgit