cksum would perform an extra read after encountering EOF
authorJim Meyering <jim@meyering.net>
Tue, 18 Feb 2003 08:05:02 +0000 (08:05 +0000)
committerJim Meyering <jim@meyering.net>
Tue, 18 Feb 2003 08:05:02 +0000 (08:05 +0000)
(cksum): Exit the loop upon EOF, too.
Patch by Michael Bacarella.

src/cksum.c

index 9148e94..0bbba3a 100644 (file)
@@ -1,5 +1,5 @@
 /* cksum -- calculate and print POSIX checksums and sizes of files
-   Copyright (C) 92, 1995-2002 Free Software Foundation, Inc.
+   Copyright (C) 92, 1995-2003 Free Software Foundation, Inc.
 
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
@@ -235,6 +235,8 @@ cksum (const char *file, int print_name)
       length += bytes_read;
       while (bytes_read--)
        crc = (crc << 8) ^ crctab[((crc >> 24) ^ *cp++) & 0xFF];
+      if (feof (fp))
+       break;
     }
 
   if (ferror (fp))