summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--tbl_term.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/tbl_term.c b/tbl_term.c
index b4200701..13438fd7 100644
--- a/tbl_term.c
+++ b/tbl_term.c
@@ -242,7 +242,8 @@ term_tbl(struct termp *tp, const struct tbl_span *sp)
cp = cp->next;
} else
vert = 0;
- if (sp->opts->opts & TBL_OPT_ALLBOX)
+ if (vert == 0 &&
+ sp->opts->opts & TBL_OPT_ALLBOX)
vert = 1;
if (vert == 0)
continue;
@@ -302,7 +303,9 @@ term_tbl(struct termp *tp, const struct tbl_span *sp)
free(tp->tbl.cols);
tp->tbl.cols = NULL;
tp->tcol->offset = offset;
- } else if (horiz == 0 && sp->opts->opts & TBL_OPT_ALLBOX)
+ } else if (horiz == 0 && sp->opts->opts & TBL_OPT_ALLBOX &&
+ (sp->next == NULL || sp->next->pos == TBL_SPAN_DATA ||
+ sp->next->next != NULL))
tbl_hrule(tp, sp, 1);
tp->flags &= ~TERMP_NONOSPACE;