write-only streams. For read/write streams, check whether we

performed a read operation already.
This commit is contained in:
Ulrich Drepper 2007-10-13 07:20:46 +00:00
parent 0ea4967708
commit ed36f224c3
2 changed files with 5 additions and 4 deletions

View File

@ -2,7 +2,8 @@
[BZ #4359]
* libio/__freading.c (__freading): Don't return true for
write-only streams.
write-only streams. For read/write streams, check whether we
performed a read operation already.
2007-10-12 Ulrich Drepper <drepper@redhat.com>

View File

@ -21,7 +21,7 @@
int
__freading (FILE *fp)
{
return (((fp->_flags & _IO_NO_WRITES)
|| (fp->_flags & _IO_CURRENTLY_PUTTING) == 0)
&& (fp->_flags & _IO_NO_READS) == 0);
return ((fp->_flags & _IO_NO_WRITES)
|| ((fp->_flags & (_IO_CURRENTLY_PUTTING | _IO_NO_READS)) == 0
&& fp->_IO_read_base != NULL));
}