=================================================================== RCS file: /cvs/mandoc/read.c,v retrieving revision 1.84 retrieving revision 1.86 diff -u -p -r1.84 -r1.86 --- mandoc/read.c 2014/09/06 23:24:32 1.84 +++ mandoc/read.c 2014/09/07 23:25:01 1.86 @@ -1,4 +1,4 @@ -/* $Id: read.c,v 1.84 2014/09/06 23:24:32 schwarze Exp $ */ +/* $Id: read.c,v 1.86 2014/09/07 23:25:01 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2010-2014 Ingo Schwarze @@ -117,6 +117,7 @@ static const char * const mandocerrs[MANDOCERR_MAX] = "sections out of conventional order", "duplicate section title", "unexpected section", + "AUTHORS section without An macro", /* related to macros and nesting */ "obsolete macro", @@ -262,7 +263,7 @@ choose_parser(struct mparse *curp) cp = curp->primary->buf; ep = cp + curp->primary->sz; while (cp < ep) { - if (*cp == '.' || *cp != '\'') { + if (*cp == '.' || *cp == '\'') { cp++; if (cp[0] == 'D' && cp[1] == 'd') { format = MPARSE_MDOC; @@ -712,6 +713,7 @@ mparse_end(struct mparse *curp) static void mparse_parse_buffer(struct mparse *curp, struct buf blk, const char *file) { + struct buf *svprimary; const char *svfile; static int recursion_depth; @@ -723,6 +725,7 @@ mparse_parse_buffer(struct mparse *curp, struct buf bl /* Line number is per-file. */ svfile = curp->file; curp->file = file; + svprimary = curp->primary; curp->primary = &blk; curp->line = 1; recursion_depth++; @@ -732,6 +735,7 @@ mparse_parse_buffer(struct mparse *curp, struct buf bl if (0 == --recursion_depth && MANDOCLEVEL_FATAL > curp->file_status) mparse_end(curp); + curp->primary = svprimary; curp->file = svfile; }