diff options
author | Kristaps Dzonsons <kristaps@bsd.lv> | 2009-07-29 09:02:41 +0000 |
---|---|---|
committer | Kristaps Dzonsons <kristaps@bsd.lv> | 2009-07-29 09:02:41 +0000 |
commit | 35e1c3f65d10cfd5d3827b03c62fee935b498f08 (patch) | |
tree | 3f3953e85501bb9470314f9c93e5e9d6b28f73fc /mdoc_term.c | |
parent | c993c635420328ac3aca50c9201fdf095a4a97f6 (diff) | |
download | mandoc-35e1c3f65d10cfd5d3827b03c62fee935b498f08.tar.gz mandoc-35e1c3f65d10cfd5d3827b03c62fee935b498f08.tar.zst mandoc-35e1c3f65d10cfd5d3827b03c62fee935b498f08.zip |
Fixed groff-compat where two `Sh' calls, with the first not having a body, don't assert vspace between calls.
Diffstat (limited to 'mdoc_term.c')
-rw-r--r-- | mdoc_term.c | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/mdoc_term.c b/mdoc_term.c index eff5b573..a274079e 100644 --- a/mdoc_term.c +++ b/mdoc_term.c @@ -1,4 +1,4 @@ -/* $Id: mdoc_term.c,v 1.64 2009/07/29 08:46:06 kristaps Exp $ */ +/* $Id: mdoc_term.c,v 1.65 2009/07/29 09:02:41 kristaps Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se> * @@ -1399,12 +1399,17 @@ static int termp_sh_pre(DECL_ARGS) { /* - * FIXME: using two `Sh' macros in sequence has no vspace - * between calls, only a newline. + * XXX: undocumented: using two `Sh' macros in sequence has no + * vspace between calls, only a newline. */ switch (node->type) { - case (MDOC_HEAD): + case (MDOC_BLOCK): + if (node->prev && MDOC_Sh == node->prev->tok) + if (NULL == node->prev->body->child) + break; term_vspace(p); + break; + case (MDOC_HEAD): pair->flag |= ttypes[TTYPE_SECTION]; break; case (MDOC_BODY): |