aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/mdoc_validate.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2015-10-30 19:04:16 +0000
committerIngo Schwarze <schwarze@openbsd.org>2015-10-30 19:04:16 +0000
commitfc07bd4ebdd99fc6e88a9e48d44eae67c93f0b24 (patch)
treef2c792a331013989c5a5314c9567b9ca77876366 /mdoc_validate.c
parent86f7c723953672d317bade10fa45e919e6bec8ff (diff)
downloadmandoc-fc07bd4ebdd99fc6e88a9e48d44eae67c93f0b24.tar.gz
mandoc-fc07bd4ebdd99fc6e88a9e48d44eae67c93f0b24.tar.zst
mandoc-fc07bd4ebdd99fc6e88a9e48d44eae67c93f0b24.zip
If a .Bd block has no arguments at all, drop the block and only keep
its contents. Removing a gratuitious difference to groff output found after a related bug report from krw@.
Diffstat (limited to 'mdoc_validate.c')
-rw-r--r--mdoc_validate.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/mdoc_validate.c b/mdoc_validate.c
index d1aa7e10..9261e2fb 100644
--- a/mdoc_validate.c
+++ b/mdoc_validate.c
@@ -1,4 +1,4 @@
-/* $Id: mdoc_validate.c,v 1.299 2015/10/21 23:51:11 schwarze Exp $ */
+/* $Id: mdoc_validate.c,v 1.300 2015/10/30 19:04:16 schwarze Exp $ */
/*
* Copyright (c) 2008-2012 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010-2015 Ingo Schwarze <schwarze@openbsd.org>
@@ -895,6 +895,16 @@ post_display(POST_ARGS)
break;
case ROFFT_BLOCK:
if (n->tok == MDOC_Bd) {
+ if (n->args == NULL) {
+ mandoc_msg(MANDOCERR_BD_NOARG,
+ mdoc->parse, n->line, n->pos, "Bd");
+ mdoc->next = ROFF_NEXT_SIBLING;
+ while (n->body->child != NULL)
+ mdoc_node_relink(mdoc,
+ n->body->child);
+ roff_node_delete(mdoc, n);
+ break;
+ }
post_bd(mdoc);
post_prevpar(mdoc);
}