From ff42180930a444cea7f19e55e2cd2bfe6d3f108b Mon Sep 17 00:00:00 2001 From: Neil Brown Date: Fri, 23 Jun 2006 14:06:00 +1000 Subject: [PATCH] Fix comment parsing (again) Bruce Fields noticed that I broke comment parsing... as xskip() is always called before xgettok(), that is the best place to put xskipcomment and still maintain proper semantics of xskip and xgettok. --- support/nfs/xio.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/support/nfs/xio.c b/support/nfs/xio.c index 1ce5157..221cce6 100644 --- a/support/nfs/xio.c +++ b/support/nfs/xio.c @@ -95,11 +95,6 @@ xgettok(XFILE *xfp, char sepa, char *tok, int len) while (i < len && (c = xgetc(xfp)) != EOF && (quoted || (c != sepa && !isspace(c)))) { - if (!quoted && i == 0 && c == '#') { - c = xskipcomment(xfp); - xfp->x_line++; - break; - } if (c == '"') { quoted = !quoted; continue; @@ -164,7 +159,12 @@ xskip(XFILE *xfp, char *str) { int c; - while ((c = xgetc(xfp)) != EOF && strchr(str, c)); + while ((c = xgetc(xfp)) != EOF) { + if (c == '#') + c = xskipcomment(xfp); + if (strchr(str, c) == NULL) + break; + } xungetc(c, xfp); } -- 2.39.2