From cb0bb1431f2f24f05dfcc3d21b6e6e91e16447d9 Mon Sep 17 00:00:00 2001
From: Bruno Haible <bruno@clisp.org>
Date: Sun, 30 Mar 2008 11:32:20 +0200
Subject: [PATCH] Use freadptr's return value.

---
 ChangeLog       | 5 +++++
 lib/freadseek.c | 5 ++---
 2 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index 4d73601fe2..e021282efb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2008-03-30  Bruno Haible  <bruno@clisp.org>
+
+	* lib/freadseek.c (freadseek): Don't ignore the return value of
+	freadptr.
+
 2008-03-29  Eric Blake  <ebb9@byu.net>
 
 	Add hex float support.
diff --git a/lib/freadseek.c b/lib/freadseek.c
index 37aeab706e..9e56ccc579 100644
--- a/lib/freadseek.c
+++ b/lib/freadseek.c
@@ -34,12 +34,11 @@ freadseek (FILE *fp, size_t offset)
     return 0;
 
   /* Increment the in-memory pointer.  This is very cheap (no system calls).  */
-  freadptr (fp, &buffered);
-  if (buffered > 0)
+  if (freadptr (fp, &buffered) != NULL && buffered > 0)
     {
       size_t increment = (buffered < offset ? buffered : offset);
 
-      /* Keep this code in sync with freadahead and freadptr!  */
+      /* Keep this code in sync with freadptr!  */
 #if defined _IO_ferror_unlocked     /* GNU libc, BeOS */
       fp->_IO_read_ptr += increment;
 #elif defined __sferror             /* FreeBSD, NetBSD, OpenBSD, MacOS X, Cygwin */
-- 
2.39.5