diff options
Diffstat (limited to 'mdoc_validate.c')
-rw-r--r-- | mdoc_validate.c | 31 |
1 files changed, 13 insertions, 18 deletions
diff --git a/mdoc_validate.c b/mdoc_validate.c index edc03a41..c58703b5 100644 --- a/mdoc_validate.c +++ b/mdoc_validate.c @@ -1072,31 +1072,26 @@ post_bf(POST_ARGS) if (MDOC_BLOCK != mdoc->last->type) return(1); - /* FIXME: clean-up .*/ - head = mdoc->last->head; if (mdoc->last->args && head->child) + return(mdoc_err(mdoc, "one argument expected")); + else if (mdoc->last->args) + return(1); - if (NULL == mdoc->last->args) { - if (NULL == head->child || - MDOC_TEXT != head->child->type) - return(mdoc_err(mdoc, "text argument expected")); + if (NULL == head->child || MDOC_TEXT != head->child->type) + return(mdoc_err(mdoc, "text argument expected")); - p = head->child->string; - if (0 == strcmp(p, "Em")) - return(1); - else if (0 == strcmp(p, "Li")) - return(1); - else if (0 == strcmp(p, "Sm")) - return(1); - return(mdoc_nerr(mdoc, head->child, "invalid font")); - } + p = head->child->string; - if (head->child) - return(mdoc_err(mdoc, "one argument expected")); + if (0 == strcmp(p, "Em")) + return(1); + else if (0 == strcmp(p, "Li")) + return(1); + else if (0 == strcmp(p, "Sm")) + return(1); - return(1); + return(mdoc_nerr(mdoc, head->child, "invalid font mode")); } |