=================================================================== RCS file: /cvs/mandoc/read.c,v retrieving revision 1.150.2.2 retrieving revision 1.154 diff -u -p -r1.150.2.2 -r1.154 --- mandoc/read.c 2016/11/10 12:52:12 1.150.2.2 +++ mandoc/read.c 2016/12/07 22:59:29 1.154 @@ -1,4 +1,4 @@ -/* $Id: read.c,v 1.150.2.2 2016/11/10 12:52:12 schwarze Exp $ */ +/* $Id: read.c,v 1.154 2016/12/07 22:59:29 schwarze Exp $ */ /* * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons * Copyright (c) 2010-2016 Ingo Schwarze @@ -19,10 +19,8 @@ #include "config.h" #include -#if HAVE_MMAP #include #include -#endif #include #include @@ -317,6 +315,7 @@ mparse_buf_r(struct mparse *curp, struct buf blk, size const char *save_file; char *cp; size_t pos; /* byte number in the ln buffer */ + size_t j; /* auxiliary byte number in the blk buffer */ enum rofferr rr; int of; int lnn; /* line number in the real file */ @@ -422,6 +421,7 @@ mparse_buf_r(struct mparse *curp, struct buf blk, size } if ('"' == blk.buf[i + 1] || '#' == blk.buf[i + 1]) { + j = i; i += 2; /* Comment, skip to end of line */ for (; i < blk.sz; ++i) { @@ -432,7 +432,7 @@ mparse_buf_r(struct mparse *curp, struct buf blk, size mandoc_msg( MANDOCERR_SPACE_EOL, curp, curp->line, - pos, NULL); + pos + i-1 - j, NULL); ++i; ++lnn; break; @@ -604,7 +604,6 @@ read_whole_file(struct mparse *curp, const char *file, size_t off; ssize_t ssz; -#if HAVE_MMAP struct stat st; if (fstat(fd, &st) == -1) @@ -628,7 +627,6 @@ read_whole_file(struct mparse *curp, const char *file, if (fb->buf != MAP_FAILED) return 1; } -#endif if (curp->gzip) { if ((gz = gzdopen(fd, "rb")) == NULL) @@ -753,11 +751,9 @@ mparse_readfd(struct mparse *curp, int fd, const char (MPARSE_UTF8 | MPARSE_LATIN1); mparse_parse_buffer(curp, blk, file); curp->filenc = save_filenc; -#if HAVE_MMAP if (with_mmap) munmap(blk.buf, blk.sz); else -#endif free(blk.buf); } return curp->file_status;