=================================================================== RCS file: /cvs/texi2mdoc/main.c,v retrieving revision 1.50 retrieving revision 1.52 diff -u -p -r1.50 -r1.52 --- texi2mdoc/main.c 2015/02/26 10:41:30 1.50 +++ texi2mdoc/main.c 2015/02/28 00:03:20 1.52 @@ -1,4 +1,4 @@ -/* $Id: main.c,v 1.50 2015/02/26 10:41:30 kristaps Exp $ */ +/* $Id: main.c,v 1.52 2015/02/28 00:03:20 kristaps Exp $ */ /* * Copyright (c) 2015 Kristaps Dzonsons * @@ -614,8 +614,8 @@ doignblock(struct texi *p, enum texicmd cmd, size_t *p * Thus, we keep track of scopes for matching "end" blocks. */ while (stack > 0 && *pos < BUFSZ(p)) { - if (stack > 10) - abort(); + if (stack > 64) + texierr(p, "run-away nested stack?"); endt = memmem(&BUF(p)[*pos], BUFSZ(p) - *pos, end, esz); startt = memmem(&BUF(p)[*pos], BUFSZ(p) - *pos, start, ssz); if (NULL == endt) { @@ -728,7 +728,7 @@ doverb(struct texi *p, enum texicmd cmd, size_t *pos) break; advance(p, pos); } - if (*pos == BUFSZ(p) - 1) + if (*pos >= BUFSZ(p) - 1) return; texiputbuf(p, start, *pos);