=================================================================== RCS file: /cvs/mandoc/main.c,v retrieving revision 1.66 retrieving revision 1.67 diff -u -p -r1.66 -r1.67 --- mandoc/main.c 2010/05/15 05:11:50 1.66 +++ mandoc/main.c 2010/05/15 05:50:19 1.67 @@ -1,4 +1,4 @@ -/* $Id: main.c,v 1.66 2010/05/15 05:11:50 kristaps Exp $ */ +/* $Id: main.c,v 1.67 2010/05/15 05:50:19 joerg Exp $ */ /* * Copyright (c) 2008, 2009 Kristaps Dzonsons * @@ -376,74 +376,72 @@ fdesc(struct curparse *curp) /* Fill buf with file blocksize. */ for (i = lnn = pos = comment = 0; i < (int)blk.sz; ++i) { - if (pos >= (int)ln.sz) { - ln.sz += 256; /* Step-size. */ - ln.buf = realloc(ln.buf, ln.sz); - if (NULL == ln.buf) { - perror(NULL); - goto bailout; - } + if (pos >= (int)ln.sz) { + ln.sz += 256; /* Step-size. */ + ln.buf = realloc(ln.buf, ln.sz); + if (NULL == ln.buf) { + perror(NULL); + goto bailout; } + } - if ('\n' != blk.buf[i]) { - if (comment) - continue; - ln.buf[pos++] = blk.buf[i]; + if ('\n' != blk.buf[i]) { + if (comment) + continue; + ln.buf[pos++] = blk.buf[i]; - /* Handle in-line `\"' comments. */ + /* Handle in-line `\"' comments. */ - if (1 == pos || '\"' != ln.buf[pos - 1]) - continue; + if (1 == pos || '\"' != ln.buf[pos - 1]) + continue; - for (j = pos - 2; j >= 0; j--) - if ('\\' != ln.buf[j]) - break; + for (j = pos - 2; j >= 0; j--) + if ('\\' != ln.buf[j]) + break; - if ( ! ((pos - 2 - j) % 2)) - continue; - - comment = 1; - pos -= 2; - for (; pos > 0; --pos) { - if (ln.buf[pos - 1] != ' ') - break; - if (pos > 2 && ln.buf[pos - 2] == '\\') - break; - } + if ( ! ((pos - 2 - j) % 2)) continue; - } - /* Handle escaped `\\n' newlines. */ + comment = 1; + pos -= 2; + for (; pos > 0; --pos) { + if (ln.buf[pos - 1] != ' ') + break; + if (pos > 2 && ln.buf[pos - 2] == '\\') + break; + } + continue; + } - if (pos > 0 && 0 == comment && - '\\' == ln.buf[pos - 1]) { - for (j = pos - 1; j >= 0; j--) - if ('\\' != ln.buf[j]) - break; - if ( ! ((pos - j) % 2)) { - pos--; - lnn++; - continue; - } + /* Handle escaped `\\n' newlines. */ + + if (pos > 0 && 0 == comment && '\\' == ln.buf[pos - 1]) { + for (j = pos - 1; j >= 0; j--) + if ('\\' != ln.buf[j]) + break; + if ( ! ((pos - j) % 2)) { + pos--; + lnn++; + continue; } + } - ln.buf[pos] = 0; - lnn++; + ln.buf[pos] = 0; + lnn++; - /* If unset, assign parser in pset(). */ + /* If unset, assign parser in pset(). */ - if ( ! (man || mdoc) && ! pset(ln.buf, - pos, curp, &man, &mdoc)) - goto bailout; + if ( ! (man || mdoc) && ! pset(ln.buf, pos, curp, &man, &mdoc)) + goto bailout; - pos = comment = 0; + pos = comment = 0; - /* Pass down into parsers. */ + /* Pass down into parsers. */ - if (man && ! man_parseln(man, lnn, ln.buf)) - goto bailout; - if (mdoc && ! mdoc_parseln(mdoc, lnn, ln.buf)) - goto bailout; + if (man && ! man_parseln(man, lnn, ln.buf)) + goto bailout; + if (mdoc && ! mdoc_parseln(mdoc, lnn, ln.buf)) + goto bailout; } /* NOTE a parser may not have been assigned, yet. */