Re: bug #41707: RCS 5.8 file corruption when using file descriptor IO for large files

Thien-Thi Nguyen <[email protected]> Mon, 28 Jul 2014 06:18:04 +0200
Newsgroups gmane.comp.version-control.rcs.bugs
Message-ID <[email protected]>
() Achim Gratz <[email protected]>
() Sun, 27 Jul 2014 17:49:43 +0200

   I'll check this, but at the moment can't say
   when I'll have time to do that.

You sent another message after this, but i accidentally deleted it,
thinking to read it in the bug-rcs archives.  But strangely, all of
this thread is missing:

 http://mail.gnu.org/archive/html/bug-rcs/

Last post was in June.  Hmm.  Could you please resend it?  (In this
reply, i reverse To and Cc contents, let's see what happens.)

   I haven't had the time to reduce this to a deomstrator, but once
   we have that it'd be possible to use the result in configure.

Yes.

   I'm not sure what guarantees POSIX makes w.r.t. shared
   filehandles and stream operations across a fork.

Does Cygwin have anything particular to say about this?

   The conditions that trigger the bug seem to be that one must have
   a stream associated to a filehandle, already read from that
   stream so the buffer gets filled (and the stream is unclean),
   then fork with that filehandle still open and read to EOF on the
   child process, then try to read past the end of the buffer in the
   parent process.  The immediate problem seems to be that the
   filehandle in the parent process still sees the EOF condition
   that the read in the child has produced.

I understand everything except for "unclean".  What does that mean?

-- 
Thien-Thi Nguyen
   GPG key: 4C807502
   (if you're human and you know it)
      read my lisp: (responsep (questions 'technical)
                               (not (via 'mailing-list)))
                     => nil
signature.asc (application/pgp-signature, 197 B)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.12 (GNU/Linux)

iEYEARECAAYFAlPVzv8ACgkQZwMiJEyAdQISUQCePIT3C95w8Hx3pU508E+AewZt
myEAoKYhQuVJ3sUmFnpSBqoV9bFI1/uQ
=y8Fu
-----END PGP SIGNATURE-----