aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2018-12-03 16:18:02 +0000
committerIngo Schwarze <schwarze@openbsd.org>2018-12-03 16:18:02 +0000
commit17e67c5cb10de07302a0f0ad1a0da7af23788f98 (patch)
treedee86c854747e8118d7a902141e4e3b95f21b0f1
parenta73ce50449b9ea611775c6c50b7fd42d08d80ae9 (diff)
downloadmandoc-17e67c5cb10de07302a0f0ad1a0da7af23788f98.tar.gz
mandoc-17e67c5cb10de07302a0f0ad1a0da7af23788f98.tar.zst
mandoc-17e67c5cb10de07302a0f0ad1a0da7af23788f98.zip
Render .br as <br/>, not as an empty <div>.
The element <br/> was already employed for many other purposes, so there is nothing wrong with using it. Also, it is safer because <br/> is permitted in phrasing content, whereas <div> is only allowed in flow content. This is the first part of the HTML syntax audit which i wanted to do for a long time. Reminded by a loosely related bug report from Mark Harris <mark dot hsj at gmail dot com>. Examples of where this caused HTML nesting syntax errors: * in man(7) code between .nf and .fi * in mdoc(7) code between .Bd -unfilled and .Ed * in mdoc(7) code between .Ql Xo and .Xc * in mdoc(7) code between .Rs and .Re
-rw-r--r--roff_html.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/roff_html.c b/roff_html.c
index 6a06c0d8..b26d9be9 100644
--- a/roff_html.c
+++ b/roff_html.c
@@ -1,4 +1,4 @@
-/* $Id: roff_html.c,v 1.12 2018/06/25 14:53:58 schwarze Exp $ */
+/* $Id: roff_html.c,v 1.13 2018/12/03 16:18:02 schwarze Exp $ */
/*
* Copyright (c) 2010 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2014, 2017, 2018 Ingo Schwarze <schwarze@openbsd.org>
@@ -58,11 +58,7 @@ roff_html_pre(struct html *h, const struct roff_node *n)
static void
roff_html_pre_br(ROFF_HTML_ARGS)
{
- struct tag *t;
-
- t = print_otag(h, TAG_DIV, "");
- print_text(h, "\\~"); /* So the div isn't empty. */
- print_tagq(h, t);
+ print_otag(h, TAG_BR, "");
}
static void