=================================================================== RCS file: /cvs/mandoc/man_html.c,v retrieving revision 1.166 retrieving revision 1.167 diff -u -p -r1.166 -r1.167 --- mandoc/man_html.c 2019/01/06 04:55:09 1.166 +++ mandoc/man_html.c 2019/01/07 07:26:29 1.167 @@ -1,4 +1,4 @@ -/* $Id: man_html.c,v 1.166 2019/01/06 04:55:09 schwarze Exp $ */ +/* $Id: man_html.c,v 1.167 2019/01/07 07:26:29 schwarze Exp $ */ /* * Copyright (c) 2008-2012, 2014 Kristaps Dzonsons * Copyright (c) 2013-2015, 2017-2019 Ingo Schwarze @@ -162,16 +162,22 @@ print_man_node(MAN_ARGS) struct tag *t; int child; + if (n->type == ROFFT_COMMENT || n->flags & NODE_NOPRT) + return; + html_fillmode(h, n->flags & NODE_NOFILL ? ROFF_nf : ROFF_fi); child = 1; + t = h->tag; + if (t->tag == TAG_P || t->tag == TAG_PRE) + t = t->next; + switch (n->type) { case ROFFT_TEXT: if (*n->string == '\0') { print_endline(h); return; } - t = h->tag; if (*n->string == ' ' && n->flags & NODE_LINE && (h->flags & HTML_NONEWLINE) == 0) print_endline(h); @@ -179,10 +185,7 @@ print_man_node(MAN_ARGS) h->flags |= HTML_NOSPACE; print_text(h, n->string); break; - case ROFFT_COMMENT: - return; case ROFFT_EQN: - t = h->tag; print_eqn(h, n->eqn); break; case ROFFT_TBL: @@ -208,17 +211,15 @@ print_man_node(MAN_ARGS) * the "meta" table state. This will be reopened on the * next table element. */ - if (h->tblt != NULL) + if (h->tblt != NULL) { print_tblclose(h); - - t = h->tag; + t = h->tag; + } if (n->tok < ROFF_MAX) { roff_html_pre(h, n); - if (n->tok != ROFF_sp) - print_stagq(h, t); + print_stagq(h, t); return; } - assert(n->tok >= MAN_TH && n->tok < MAN_MAX); if (man_html_acts[n->tok - MAN_TH].pre != NULL) child = (*man_html_acts[n->tok - MAN_TH].pre)(man,