summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorKristaps Dzonsons <kristaps@bsd.lv>2009-10-18 11:36:37 +0000
committerKristaps Dzonsons <kristaps@bsd.lv>2009-10-18 11:36:37 +0000
commit99d2c05b48b4557b0fb112e8139c67f71959cdd0 (patch)
treec8fe07af2aaadf3387f3253a5b5fa0fd6cc5ad43
parent45523d60760f6291fb81789a01f1bcf2b8e80a69 (diff)
downloadmandoc-99d2c05b48b4557b0fb112e8139c67f71959cdd0.tar.gz
mandoc-99d2c05b48b4557b0fb112e8139c67f71959cdd0.tar.zst
mandoc-99d2c05b48b4557b0fb112e8139c67f71959cdd0.zip
Removed number-check for `sp' in -Tman, as nroff accepts non-numerics as a single vspace.
-rw-r--r--man_validate.c39
1 files changed, 4 insertions, 35 deletions
diff --git a/man_validate.c b/man_validate.c
index 8c2299cb..6b382956 100644
--- a/man_validate.c
+++ b/man_validate.c
@@ -1,4 +1,4 @@
-/* $Id: man_validate.c,v 1.24 2009/08/22 09:10:38 kristaps Exp $ */
+/* $Id: man_validate.c,v 1.25 2009/10/18 11:36:37 kristaps Exp $ */
/*
* Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@kth.se>
*
@@ -37,14 +37,13 @@ struct man_valid {
static int check_bline(CHKARGS);
static int check_eq0(CHKARGS);
-static int check_eq1(CHKARGS);
+static int check_le1(CHKARGS);
static int check_ge2(CHKARGS);
static int check_le5(CHKARGS);
static int check_par(CHKARGS);
static int check_part(CHKARGS);
static int check_root(CHKARGS);
static int check_sec(CHKARGS);
-static int check_sp(CHKARGS);
static int check_text(CHKARGS);
static v_check posts_eq0[] = { check_eq0, NULL };
@@ -52,7 +51,7 @@ static v_check posts_ge2_le5[] = { check_ge2, check_le5, NULL };
static v_check posts_par[] = { check_par, NULL };
static v_check posts_part[] = { check_part, NULL };
static v_check posts_sec[] = { check_sec, NULL };
-static v_check posts_sp[] = { check_sp, NULL };
+static v_check posts_sp[] = { check_le1, NULL };
static v_check pres_bline[] = { check_bline, NULL };
static const struct man_valid man_valids[MAN_MAX] = {
@@ -205,42 +204,12 @@ check_##name(CHKARGS) \
}
INEQ_DEFINE(0, ==, eq0)
-INEQ_DEFINE(1, ==, eq1)
+INEQ_DEFINE(1, <=, le1)
INEQ_DEFINE(2, >=, ge2)
INEQ_DEFINE(5, <=, le5)
static int
-check_sp(CHKARGS)
-{
- long lval;
- char *ep, *buf;
-
- if (NULL == n->child)
- return(1);
- else if ( ! check_eq1(m, n))
- return(0);
-
- assert(MAN_TEXT == n->child->type);
- buf = n->child->string;
- assert(buf);
-
- /* From OpenBSD's strtol(3). */
-
- errno = 0;
- lval = strtol(buf, &ep, 10);
- if (buf[0] == '\0' || *ep != '\0')
- return(man_nerr(m, n->child, WNUMFMT));
-
- if ((errno == ERANGE && (lval == LONG_MAX || lval == LONG_MIN)) ||
- (lval > INT_MAX || lval < 0))
- return(man_nerr(m, n->child, WNUMFMT));
-
- return(1);
-}
-
-
-static int
check_sec(CHKARGS)
{