summaryrefslogtreecommitdiff
path: root/lib/freadahead.c
diff options
context:
space:
mode:
authorKevin Cernekee <cernekee@google.com>2015-02-11 15:22:49 -0800
committerPaul Eggert <eggert@cs.ucla.edu>2015-02-11 15:47:44 -0800
commit8e19825e65924c36535bf70e21c26d2cbc6076ac (patch)
tree8ea1b71d6f4a96264acae6e3d7af7814c86aafee /lib/freadahead.c
parent6e0e31c383c86e297bfbb8dae89515b0587a1b15 (diff)
downloadgnulib-8e19825e65924c36535bf70e21c26d2cbc6076ac.tar.gz
Fix FILE struct compatibility with Android API level >= 21
* lib/stdio-impl.h: Test explicitly for __ANDROID__ instead of __sferror. Recent versions of Bionic's stdio.h no longer define __sferror. * lib/fbufmode.c: Likewise. * lib/fflush.c: Likewise. * lib/fpurge.c: Likewise. * lib/freadable.c: Likewise. * lib/freadahead.c: Likewise. * lib/freading.c: Likewise. * lib/freadptr.c: Likewise. * lib/freadseek.c: Likewise. * lib/fseeko.c: Likewise. * lib/fseterr.c: Likewise. * lib/fwritable.c: Likewise. * lib/fwriting.c: Likewise.
Diffstat (limited to 'lib/freadahead.c')
-rw-r--r--lib/freadahead.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/lib/freadahead.c b/lib/freadahead.c
index aa4b367463..094daabfc6 100644
--- a/lib/freadahead.c
+++ b/lib/freadahead.c
@@ -31,7 +31,8 @@ freadahead (FILE *fp)
return (fp->_IO_read_end - fp->_IO_read_ptr)
+ (fp->_flags & _IO_IN_BACKUP ? fp->_IO_save_end - fp->_IO_save_base :
0);
-#elif defined __sferror || defined __DragonFly__ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin */
+#elif defined __sferror || defined __DragonFly__ || defined __ANDROID__
+ /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Android */
if ((fp_->_flags & __SWR) != 0 || fp_->_r < 0)
return 0;
# if defined __DragonFly__