Subject: B19: cp corrupts files with lots of zeros (Win95)
From: [email-masked] (Vince Del Vecchio)

9 Jul 1998 00:57:26 -0700
Message-ID: <[email-masked]>
To: [email-masked]

This seems to have been reported before in various forms, but I have
never seen any official response and it doesn't seem to have been fixed.
It doesn't seem to be in the FAQ.

This is with b19.1 on Win95.

Create a file with a lot of zeros in it.  I did this with:
  perl -e "print qq{\0} x 20480, qq{\n}" > /tmp/mostly-empty
Now copy it using cp
  cp /tmp/mostly-empty /tmp/full-of-garbage
Now compare
  diff /tmp/mostly-empty /tmp/full-of-garbage
Binary files /tmp/mostly-empty and /tmp/full-of-garbage differ

(If it doesn't work, try again with a different second filename.
Sometime you get lucky and it works.)

This seems a bit absurd to me.  How can you rely on the tools if
cp silently corrupts your files?

The main problem seems that lseek past EOF doesn't work the same as on
Unix (or even as on NT).  I sent in a bug report, including a patch,
just about a year ago, but it seems to have been ignored.  (I also
reported the HAVE_SETMODE problem with diff, among other things, which
seems to have just been noticed again and fixed -- you'll have to excuse
me for being a little bitter.)  You can find it by searching for "lseek"
in the mailing list archives.

-Vince Del Vecchio
[email-masked]
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".