On Thu, Mar 10, 2011 at 04:11:41PM -0500, Christopher Faylor wrote: >On Thu, Mar 10, 2011 at 09:11:52PM +0100, Robert Wruck wrote: >>Hi, >> >>tested with cvs HEAD: >> >>> Just terminating the loop after write_overlapped_fallback is not enough. >>> When the size to write exceeds MAX_OVERLAPPED_WRITE_LEN and WriteFile >>> fails for MAX_OVERLAPPED_WRITE_LEN, write() will always return 0. >> >>Now any write with length > MAX_OVERLAPPED_WRITE_LEN fails with -1 / >>EFBIG (on the machine that has the WriteFile limitation). > >How about if you try a snapshot rather than your own home-built version?
I've just run your test script a number of times and saw a failure a couple of times. It's a race condition that is fixable. The irritating thing that I noticed is that, despite returning an error, WriteFile nevertheless still writes 64K of the data. That's pretty annoying and is something that I have to fix. cgf -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple