diff options
Diffstat (limited to 'mdoc_macro.c')
-rw-r--r-- | mdoc_macro.c | 17 |
1 files changed, 14 insertions, 3 deletions
diff --git a/mdoc_macro.c b/mdoc_macro.c index aed0221d..34229458 100644 --- a/mdoc_macro.c +++ b/mdoc_macro.c @@ -1,4 +1,4 @@ -/* $Id: mdoc_macro.c,v 1.231 2019/01/01 07:42:04 schwarze Exp $ */ +/* $Id: mdoc_macro.c,v 1.232 2019/01/07 07:26:29 schwarze Exp $ */ /* * Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv> * Copyright (c) 2010, 2012-2019 Ingo Schwarze <schwarze@openbsd.org> @@ -295,6 +295,8 @@ rew_pending(struct roff_man *mdoc, const struct roff_node *n) case ROFFT_HEAD: roff_body_alloc(mdoc, n->line, n->pos, n->tok); + if (n->tok == MDOC_Ss) + mdoc->flags &= ~ROFF_NONOFILL; break; case ROFFT_BLOCK: break; @@ -1053,9 +1055,16 @@ blk_full(MACRO_PROT_ARGS) * regular child nodes. */ - if (tok == MDOC_Sh) + switch (tok) { + case MDOC_Sh: mdoc->flags &= ~ROFF_NOFILL; - + break; + case MDOC_Ss: + mdoc->flags |= ROFF_NONOFILL; + break; + default: + break; + } mdoc_argv(mdoc, line, tok, &arg, pos, buf); blk = mdoc_block_alloc(mdoc, line, ppos, tok, arg); head = body = NULL; @@ -1197,6 +1206,8 @@ blk_full(MACRO_PROT_ARGS) rew_last(mdoc, head); body = roff_body_alloc(mdoc, line, ppos, tok); + if (tok == MDOC_Ss) + mdoc->flags &= ~ROFF_NONOFILL; /* * Set up fill mode for display blocks. |