]> diplodocus.org Git - nmh/blobdiff - sbr/vfgets.c
Fix invalid pointer arithmetic.
[nmh] / sbr / vfgets.c
index c6a39ea6df610d3e52a6f8ed8cf32949f7ce2e1f..d3946bc6872944261d7ae59cac57f070a766315a 100644 (file)
@@ -1,8 +1,4 @@
-
-/*
- * vfgets.c -- virtual fgets
- *
- * $Id$
+/* vfgets.c -- virtual fgets
  *
  * This code is Copyright (c) 2002, by the authors of nmh.  See the
  * COPYRIGHT file in the root directory of the nmh distribution for
@@ -32,7 +28,7 @@ vfgets (FILE *in, char **bp)
                *bp = pp;
                return 0;
            }
-           return (ferror (in) && !feof (in) ? -1 : 1);
+           return ferror(in) && !feof(in) ? -1 : 1;
        }
 
        if ((dp = cp + strlen (cp) - 2) < cp || *dp != QUOTE) {
@@ -42,15 +38,13 @@ wrong_guess:
            if (*dp == '\n') {
                *bp = pp;
                return 0;
-           } else {
-               cp = ++dp;
            }
+            cp = ++dp;
        } else {
            for (fp = dp - 1, toggle = 0; fp >= cp; fp--) {
                if (*fp != QUOTE)
                    break;
-               else
-                   toggle = !toggle;
+                toggle = !toggle;
            }
            if (toggle)
                goto wrong_guess;