-/* $Id: demandoc.c,v 1.20 2015/04/18 17:53:21 schwarze Exp $ */
+/* $Id: demandoc.c,v 1.27 2016/07/09 15:24:19 schwarze Exp $ */
/*
* Copyright (c) 2011 Kristaps Dzonsons <kristaps@bsd.lv>
*
#include <assert.h>
#include <ctype.h>
-#include <getopt.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
main(int argc, char *argv[])
{
struct mparse *mp;
- struct mchars *mchars;
int ch, fd, i, list;
extern int optind;
break;
default:
usage();
- return((int)MANDOCLEVEL_BADARG);
+ return (int)MANDOCLEVEL_BADARG;
}
argc -= optind;
argv += optind;
- mchars = mchars_alloc();
- mp = mparse_alloc(MPARSE_SO, MANDOCLEVEL_BADARG, NULL, mchars, NULL);
+ mchars_alloc();
+ mp = mparse_alloc(MPARSE_SO, MANDOCLEVEL_BADARG, NULL, NULL);
assert(mp);
if (argc < 1)
for (i = 0; i < argc; i++) {
mparse_reset(mp);
- if (mparse_open(mp, &fd, argv[i]) != MANDOCLEVEL_OK) {
+ if ((fd = mparse_open(mp, argv[i])) == -1) {
perror(argv[i]);
continue;
}
}
mparse_free(mp);
- mchars_free(mchars);
- return((int)MANDOCLEVEL_OK);
+ mchars_free();
+ return (int)MANDOCLEVEL_OK;
}
static void
int line, col;
mparse_readfd(mp, fd, fn);
+ close(fd);
mparse_result(mp, &man, NULL);
line = 1;
col = 0;
if (man == NULL)
return;
- if (man->macroset == MACROSET_MDOC)
+ if (man->macroset == MACROSET_MDOC) {
+ mdoc_validate(man);
pmdoc(man->first->child, &line, &col, list);
- else
+ } else {
+ man_validate(man);
pman(man->first->child, &line, &col, list);
+ }
if ( ! list)
putchar('\n');