]> git.decadent.org.uk Git - nfs-utils.git/blobdiff - support/nfs/xio.c
Fix line numbers in tokenizer, which reads /etc/exports etc.
[nfs-utils.git] / support / nfs / xio.c
index 1bcd41bc8b1a9eb46bc21af60f5168276ff5688f..de51a15c0a8d4b6d30d4f7c77a1b284057671e7b 100644 (file)
@@ -92,7 +92,7 @@ xgettok(XFILE *xfp, char sepa, char *tok, int len)
        while (i < len && (c = xgetc(xfp)) != EOF && c != sepa && !isspace(c))
                tok[i++] = c;
        if (c == '\n')
-               ungetc(c, xfp->x_fp);
+               xungetc(c, xfp->x_fp);
        if (!i)
                return 0;
        if (i >= len || (sepa && c != sepa))
@@ -126,10 +126,13 @@ xgetc(XFILE *xfp)
 }
 
 void
-xungetc(char c, XFILE *xfp)
+xungetc(int c, XFILE *xfp)
 {
-       if (c != EOF)
+       if (c != EOF) {
                ungetc(c, xfp->x_fp);
+               if (c == '\n')
+                       xfp->x_line--;
+       }
 }
 
 void