closein: correct comments
authorEric Blake <eblake@redhat.com>
Wed, 10 Aug 2011 11:28:29 +0000 (05:28 -0600)
committerEric Blake <eblake@redhat.com>
Wed, 10 Aug 2011 11:28:29 +0000 (05:28 -0600)
* lib/closein.c (close_stdin): Improve comments.

Signed-off-by: Eric Blake <eblake@redhat.com>
ChangeLog
lib/closein.c

index 701f07b5367889c5670dbbd013b9b169394be975..538c121ab83cecf08143ae814d17d9cd7a08ae24 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2011-08-10  Eric Blake  <eblake@redhat.com>
+
+       closein: correct comments
+       * lib/closein.c (close_stdin): Improve comments.
+
 2011-08-09  Bruno Haible  <bruno@clisp.org>
 
        More tests for 'fseeko'.
 2011-08-09  Bruno Haible  <bruno@clisp.org>
 
        More tests for 'fseeko'.
index beff8bb53a7e40fedc9d83a25b4931a74ec64816..2a652f4940a1bb9d84459a06f7781c940dad0ffc 100644 (file)
@@ -55,7 +55,7 @@ close_stdin_set_file_name (const char *file)
    For example, POSIX requires that these two commands behave alike:
 
      (sed -ne 1q; cat) < file
    For example, POSIX requires that these two commands behave alike:
 
      (sed -ne 1q; cat) < file
-     tail -n 1 file
+     tail -n +2 file
 
    Since close_stdin is commonly registered via 'atexit', POSIX
    and the C standard both say that it should not call 'exit',
 
    Since close_stdin is commonly registered via 'atexit', POSIX
    and the C standard both say that it should not call 'exit',
@@ -82,7 +82,8 @@ close_stdin (void)
 
   /* There is no need to flush stdin if we can determine quickly that stdin's
      input buffer is empty; in this case we know that if stdin is seekable,
 
   /* There is no need to flush stdin if we can determine quickly that stdin's
      input buffer is empty; in this case we know that if stdin is seekable,
-     fseeko (stdin, 0, SEEK_CUR) == lseek (0, 0, SEEK_CUR).  */
+     (fseeko (stdin, 0, SEEK_CUR), ftello (stdin))
+     == lseek (0, 0, SEEK_CUR).  */
   if (freadahead (stdin) > 0)
     {
       /* Only attempt flush if stdin is seekable, as fflush is entitled to
   if (freadahead (stdin) > 0)
     {
       /* Only attempt flush if stdin is seekable, as fflush is entitled to