=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/mandoc/mdoc_validate.c,v retrieving revision 1.151 retrieving revision 1.152 diff -u -r1.151 -r1.152 --- src/usr.bin/mandoc/mdoc_validate.c 2014/08/08 15:15:27 1.151 +++ src/usr.bin/mandoc/mdoc_validate.c 2014/08/08 15:21:17 1.152 @@ -1,4 +1,4 @@ -/* $Id: mdoc_validate.c,v 1.151 2014/08/08 15:15:27 schwarze Exp $ */ +/* $Id: mdoc_validate.c,v 1.152 2014/08/08 15:21:17 schwarze Exp $ */ /* * Copyright (c) 2008-2012 Kristaps Dzonsons * Copyright (c) 2010-2014 Ingo Schwarze @@ -1679,16 +1679,24 @@ static int post_root(POST_ARGS) { - int ret; struct mdoc_node *n; - ret = 1; + /* Add missing prologue data. */ - /* Check that we have a finished prologue. */ - if ( ! (MDOC_PBODY & mdoc->flags)) { - ret = 0; - mdoc_nmsg(mdoc, mdoc->first, MANDOCERR_NODOCPROLOG); + mandoc_msg(MANDOCERR_PROLOG_BAD, mdoc->parse, 0, 0, "EOF"); + if (mdoc->meta.date == NULL) + mdoc->meta.date = mdoc->quick ? + mandoc_strdup("") : + mandoc_normdate(mdoc->parse, NULL, 0, 0); + if (mdoc->meta.title == NULL) + mdoc->meta.title = mandoc_strdup("UNKNOWN"); + if (mdoc->meta.vol == NULL) + mdoc->meta.vol = mandoc_strdup("LOCAL"); + if (mdoc->meta.arch == NULL) + mdoc->meta.msec = mandoc_strdup("1"); + if (mdoc->meta.os == NULL) + mdoc->meta.os = mandoc_strdup("UNKNOWN"); } n = mdoc->first; @@ -1703,7 +1711,7 @@ n->child->line, n->child->pos, mdoc_macronames[n->child->tok]); - return(ret); + return(1); } static int