summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mdoc_term.c11
1 files changed, 8 insertions, 3 deletions
diff --git a/mdoc_term.c b/mdoc_term.c
index 28822fac..ed9e0e01 100644
--- a/mdoc_term.c
+++ b/mdoc_term.c
@@ -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):