=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mandoc/man_validate.c,v retrieving revision 1.34 retrieving revision 1.35 diff -c -r1.34 -r1.35 *** src/usr.bin/mandoc/man_validate.c 2010/12/01 23:02:59 1.34 --- src/usr.bin/mandoc/man_validate.c 2010/12/06 23:03:56 1.35 *************** *** 1,4 **** ! /* $Id: man_validate.c,v 1.34 2010/12/01 23:02:59 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010 Kristaps Dzonsons * Copyright (c) 2010 Ingo Schwarze --- 1,4 ---- ! /* $Id: man_validate.c,v 1.35 2010/12/06 23:03:56 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010 Kristaps Dzonsons * Copyright (c) 2010 Ingo Schwarze *************** *** 170,178 **** { if (MAN_BLINE & m->flags) ! return(man_nmsg(m, n, MANDOCERR_SCOPEEXIT)); ! if (MAN_ELINE & m->flags) ! return(man_nmsg(m, n, MANDOCERR_SCOPEEXIT)); m->flags &= ~MAN_BLINE; m->flags &= ~MAN_ELINE; --- 170,178 ---- { if (MAN_BLINE & m->flags) ! man_nmsg(m, n, MANDOCERR_SCOPEEXIT); ! else if (MAN_ELINE & m->flags) ! man_nmsg(m, n, MANDOCERR_SCOPEEXIT); m->flags &= ~MAN_BLINE; m->flags &= ~MAN_ELINE; *************** *** 181,194 **** man_nmsg(m, n, MANDOCERR_NODOCBODY); return(0); } else if (NULL == m->meta.title) { ! if ( ! man_nmsg(m, n, MANDOCERR_NOTITLE)) ! return(0); /* * If a title hasn't been set, do so now (by * implication, date and section also aren't set). - * - * FIXME: this should be in man_action.c. */ m->meta.title = mandoc_strdup("unknown"); m->meta.date = time(NULL); m->meta.msec = mandoc_strdup("1"); --- 181,193 ---- man_nmsg(m, n, MANDOCERR_NODOCBODY); return(0); } else if (NULL == m->meta.title) { ! man_nmsg(m, n, MANDOCERR_NOTITLE); ! /* * If a title hasn't been set, do so now (by * implication, date and section also aren't set). */ + m->meta.title = mandoc_strdup("unknown"); m->meta.date = time(NULL); m->meta.msec = mandoc_strdup("1"); *************** *** 211,219 **** } for (p = n->child->string; '\0' != *p; p++) ! if (isalpha((u_char)*p) && ! isupper((u_char)*p)) ! if ( ! man_nmsg(m, n, MANDOCERR_UPPERCASE)) ! return(0); return(1); } --- 210,220 ---- } for (p = n->child->string; '\0' != *p; p++) ! /* Only warn about this once... */ ! if (isalpha((u_char)*p) && ! isupper((u_char)*p)) { ! man_nmsg(m, n, MANDOCERR_UPPERCASE); ! break; ! } return(1); } *************** *** 336,342 **** man_nmsg(m, n, MANDOCERR_SYNTARGCOUNT); return(0); } else if (MAN_BODY == n->type && 0 == n->nchild) ! return(man_nmsg(m, n, MANDOCERR_NOBODY)); return(1); } --- 337,343 ---- man_nmsg(m, n, MANDOCERR_SYNTARGCOUNT); return(0); } else if (MAN_BODY == n->type && 0 == n->nchild) ! man_nmsg(m, n, MANDOCERR_NOBODY); return(1); } *************** *** 347,353 **** { if (MAN_BODY == n->type && 0 == n->nchild) ! return(man_nmsg(m, n, MANDOCERR_NOBODY)); return(1); } --- 348,355 ---- { if (MAN_BODY == n->type && 0 == n->nchild) ! man_nmsg(m, n, MANDOCERR_NOBODY); ! return(1); } *************** *** 547,555 **** /* Body-less lists are ok. */ break; default: ! if (n->nchild) ! break; ! return(man_nmsg(m, n, MANDOCERR_NOBODY)); } if (MAN_HEAD == n->type) switch (n->tok) { --- 549,557 ---- /* Body-less lists are ok. */ break; default: ! if (0 == n->nchild) ! man_nmsg(m, n, MANDOCERR_NOBODY); ! break; } if (MAN_HEAD == n->type) switch (n->tok) { *************** *** 558,566 **** case (MAN_P): /* FALLTHROUGH */ case (MAN_LP): ! if (0 == n->nchild) ! break; ! return(man_nmsg(m, n, MANDOCERR_ARGSLOST)); default: break; } --- 560,568 ---- case (MAN_P): /* FALLTHROUGH */ case (MAN_LP): ! if (n->nchild) ! man_nmsg(m, n, MANDOCERR_ARGSLOST); ! break; default: break; }