This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Reading a write-only file doesn't set error condition (was Re: Cygwin fread on Write-Only File Descriptor returns undefined state)


Corinna Vinschen wrote:

In addition to fread not setting the error value, a value
of zero is returned. Zero is to be returned, *only* on
end-of-file or error. However, in the test case, neither

That's not correct. Any value less than size*nitems indicates either
EOF or an error. The programmer is responsible to test with feof() or
ferror() to distinguish between these two cases. See
----
  Er, are you referring to the case of zero possibly being
a valid return value if the program requests zero bytes be read?
I didn't say "only 0"...  I new about the other values<count,
but was focusing on the conditions that would exist only when
a 0 was returned for the return value.

I debugged your testcase and the problem appears to be in __srefill(),
defined in newlib/libc/stdio/refill.c:
....Cool!

Linda


-- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]