aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/man_validate.c
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2012-07-18 16:41:09 +0000
committerIngo Schwarze <schwarze@openbsd.org>2012-07-18 16:41:09 +0000
commit3baee6b2cf08cfd97e8919f359b6754c2ddcd6bb (patch)
tree92382402165f395bfb81bcb404cfb82e6104fdb3 /man_validate.c
parent544b05c948ba16b507a15686221cff4d6ab9393a (diff)
downloadmandoc-3baee6b2cf08cfd97e8919f359b6754c2ddcd6bb.tar.gz
mandoc-3baee6b2cf08cfd97e8919f359b6754c2ddcd6bb.tar.zst
mandoc-3baee6b2cf08cfd97e8919f359b6754c2ddcd6bb.zip
Drop .sp and .br right after .SH and .SS.
Fixes vertical spacing after "OPTIONS" in gcc(1). Issue first reported by naddy@ in rsync(1). OpenBSD rev. 1.54.
Diffstat (limited to 'man_validate.c')
-rw-r--r--man_validate.c27
1 files changed, 20 insertions, 7 deletions
diff --git a/man_validate.c b/man_validate.c
index 988603bf..38aa29f0 100644
--- a/man_validate.c
+++ b/man_validate.c
@@ -1,7 +1,7 @@
-/* $Id: man_validate.c,v 1.81 2012/06/02 20:16:23 schwarze Exp $ */
+/* $Id: man_validate.c,v 1.82 2012/07/18 16:41:09 schwarze Exp $ */
/*
* Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
- * Copyright (c) 2010 Ingo Schwarze <schwarze@openbsd.org>
+ * Copyright (c) 2010, 2012 Ingo Schwarze <schwarze@openbsd.org>
*
* Permission to use, copy, modify, and distribute this software for any
* purpose with or without fee is hereby granted, provided that the above
@@ -541,12 +541,25 @@ static int
post_vs(CHKARGS)
{
- /*
- * Don't warn about this because it occurs in pod2man and would
- * cause considerable (unfixable) warnage.
- */
- if (NULL == n->prev && MAN_ROOT == n->parent->type)
+ if (NULL != n->prev)
+ return(1);
+
+ switch (n->parent->tok) {
+ case (MAN_SH):
+ /* FALLTHROUGH */
+ case (MAN_SS):
+ man_nmsg(m, n, MANDOCERR_IGNPAR);
+ /* FALLTHROUGH */
+ case (MAN_MAX):
+ /*
+ * Don't warn about this because it occurs in pod2man
+ * and would cause considerable (unfixable) warnage.
+ */
man_node_delete(m, n);
+ break;
+ default:
+ break;
+ }
return(1);
}