[Patch] libstdc++/21286
Benjamin Kosnik
bkoz@redhat.com
Mon May 2 14:23:00 GMT 2005
> the below is what I have prepared with Nathan: basically, in order to
> correctly implement the exact requirements of istream::read also in
> presence of short reads (possible with pipes, f.i.) we need to loop
> until either zero chars are read or error (-1) is returned. I'm punting
> for now on a testcase, since would be very brittle, depending on the
> choice of n, the presence of the data in the cache, and so on, but I can
> guarantee that the issue is fixed, in the radical way ;)
Sounds good. Thanks for documenting this loop! ;)
> Tested x86-linux (also the interactive tests, to be safe, but here we
> are not involving the sync_filebuf and in any case touching only xsgetn,
> *not* underflow)
It would be nice to do a complete transition, and remove these bits as well:
./config/os/newlib/os_defines.h:#define _GLIBCXX_HAVE_DOS_BASED_FILESYSTEM 1
./config/os/mingw32/os_defines.h:#define _GLIBCXX_HAVE_DOS_BASED_FILESYSTEM 1
Might want to test on cygwin for this change, to make sure 20806 is still fixed.
best,
-benjamin
More information about the Libstdc++
mailing list