X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;f=lib%2Ffreading.c;h=dcdc3d24c8f19ba296fbaffd7bbc4cba5108a525;hb=6cad9c91215eac0f90bbb1f9473ea0f5fce3b085;hp=cbe4d7e7537619728cea86d0b8f89f5f14e09060;hpb=57fdfd3f8ec62b105c53bcdf6f127c35c7fe7391;p=gnulib.git diff --git a/lib/freading.c b/lib/freading.c index cbe4d7e75..dcdc3d24c 100644 --- a/lib/freading.c +++ b/lib/freading.c @@ -19,9 +19,9 @@ /* Specification. */ #include "freading.h" -/* Don't use glibc's __freading function, see +/* Don't use glibc's __freading function in glibc < 2.7, see */ -#if !(HAVE___FREADING && !defined __GLIBC__) +#if !(HAVE___FREADING && (!defined __GLIBC__ || __GLIBC__ > 2 || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 7))) bool freading (FILE *fp) @@ -40,8 +40,8 @@ freading (FILE *fp) #elif defined __UCLIBC__ /* uClibc */ return (fp->__modeflags & (__FLAG_READONLY | __FLAG_READING)) != 0; #elif defined __QNX__ /* QNX */ - return ((fp->_Mode & _MOPENW) == 0 - || (fp->_Mode & _MREAD) != 0); + return ((fp->_Mode & 0x2 /* _MOPENW */) == 0 + || (fp->_Mode & 0x1000 /* _MREAD */) != 0); #else #error "Please port gnulib freading.c to your platform!" #endif