This is the mail archive of the cygwin@sources.redhat.com 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]

Re: read() returns errno == 1 ("Resource temporarily unavailable")


On Sat, Jan 27, 2001 at 05:24:22PM +0100, Jesper Eskilson wrote:
>Christopher Faylor <cgf@redhat.com> writes:
>
>> On Fri, Jan 19, 2001 at 07:52:18PM +0100, Jesper Eskilson wrote:
>> >Christopher Faylor <cygwin@cygwin.com> writes:
>> >
>> >> errno == 1 is not EAGAIN.  I assume that you mean errno == 11.
>> >
>> >Of course. My fingers slipped.
>> >
>> >> Looking at the code for _read, the only time this should be returned is if
>> >> you are using a non-blocking read.
>> >
>> >I'm fairly certain that I'm not.
>> 
>> Well, since I'm fairly certain that the code is pretty clear and since I
>> don't recall anyone else reporting this you're either going to have to
>> debug this yourself or provide a very simple test case.
>
>I finally gained some wisdom regarding this. The problem was caused when
>accessing a file on a filesystem mounted in text-mode (the file-system was
>accesses as //<driveletter>/<path>). By explicitly opening the file with
>the O_BINARY flag, the problem went away. I thought I read the section on
>text vs. binary files in the manual, but apparently I missed the section on
>what happens with "//<driveletter>/".
>
>Now, as I don't like leaving bugs behind without fully understanding why
>they disappeared, the natural question is: Since the file-descriptor was
>not in non-blocking mode, why did read() return EAGAIN not an EOF?

"...  you're either going to have to debug this yourself or provide a
very simple test case."

cgf

--
Want to unsubscribe from this list?
Check out: http://cygwin.com/ml/#unsubscribe-simple


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