=================================================================== RCS file: /cvs/mandoc/man_validate.c,v retrieving revision 1.145 retrieving revision 1.149 diff -u -p -r1.145 -r1.149 --- mandoc/man_validate.c 2018/12/31 08:38:21 1.145 +++ mandoc/man_validate.c 2019/06/27 15:07:30 1.149 @@ -1,4 +1,4 @@ -/* $Id: man_validate.c,v 1.145 2018/12/31 08:38:21 schwarze Exp $ */ +/* $Id: man_validate.c,v 1.149 2019/06/27 15:07:30 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2010, 2012-2018 Ingo Schwarze @@ -41,7 +41,7 @@ typedef void (*v_check)(CHKARGS); -static void check_abort(CHKARGS); +static void check_abort(CHKARGS) __attribute__((__noreturn__)); static void check_par(CHKARGS); static void check_part(CHKARGS); static void check_root(CHKARGS); @@ -153,7 +153,6 @@ man_validate(struct roff_man *man) default: if (n->tok < ROFF_MAX) { roff_validate(man); - man_state(man, n); break; } assert(n->tok >= MAN_TH && n->tok < MAN_MAX); @@ -161,7 +160,7 @@ man_validate(struct roff_man *man) if (*cp) (*cp)(man, n); if (man->last == n) - man_state(man, n); + n->flags |= NODE_VALID; break; } } @@ -186,8 +185,7 @@ check_root(CHKARGS) man->meta.title = mandoc_strdup(""); man->meta.msec = mandoc_strdup(""); - man->meta.date = man->quick ? mandoc_strdup("") : - mandoc_normdate(man, NULL, n->line, n->pos); + man->meta.date = mandoc_normdate(man, NULL, n->line, n->pos); } if (man->meta.os_e && @@ -370,8 +368,8 @@ post_TH(CHKARGS) /* ->TITLE<- MSEC DATE OS VOL */ n = n->child; - if (n && n->string) { - for (p = n->string; '\0' != *p; p++) { + if (n != NULL && n->string != NULL) { + for (p = n->string; *p != '\0'; p++) { /* Only warn about this once... */ if (isalpha((unsigned char)*p) && ! isupper((unsigned char)*p)) { @@ -389,9 +387,9 @@ post_TH(CHKARGS) /* TITLE ->MSEC<- DATE OS VOL */ - if (n) + if (n != NULL) n = n->next; - if (n && n->string) + if (n != NULL && n->string != NULL) man->meta.msec = mandoc_strdup(n->string); else { man->meta.msec = mandoc_strdup(""); @@ -401,17 +399,16 @@ post_TH(CHKARGS) /* TITLE MSEC ->DATE<- OS VOL */ - if (n) + if (n != NULL) n = n->next; - if (n && n->string && '\0' != n->string[0]) { - man->meta.date = man->quick ? - mandoc_strdup(n->string) : - mandoc_normdate(man, n->string, n->line, n->pos); - } else { + if (n != NULL && n->string != NULL && n->string[0] != '\0') + man->meta.date = mandoc_normdate(man, + n->string, n->line, n->pos); + else { man->meta.date = mandoc_strdup(""); mandoc_msg(MANDOCERR_DATE_MISSING, - n ? n->line : nb->line, - n ? n->pos : nb->pos, "TH"); + n == NULL ? nb->line : n->line, + n == NULL ? nb->pos : n->pos, "TH"); } /* TITLE MSEC DATE ->OS<- VOL */