[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: -kk and -kb aren't getting along
From: |
David L. Martin |
Subject: |
Re: -kk and -kb aren't getting along |
Date: |
Wed, 20 Dec 2000 23:21:24 -0600 |
"Derek R. Price" wrote:
> Unfortunately, if, say, somebody wrote some C code like the following:
>
> foo_c_date = "$Date: <somedate>$"
>
> as used to be a common practice, then -kk causes shortening of the data
segment of
> a binary so that "$Date: <somedate>$" becoming "$Date$" throws off all
sorts of
> indexes into code & data. It becomes a real mess. I believe line ending
> substitution happens in -kk mode as well.
Another example would be for Word documents. As an example, I modified a
Word
document (whose default keyword expansion mode in its archive is set to
binary) to
include the line "$Date: blah blah blah". I committed the file and then did
a "cvs
update -kk". Word could not open the resulting file. The length of the
file was
truncated by 32 bytes (2 bytes per character in ": blah blah blah"). Word
appears to
require file lengths in 512-byte blocks, so it knew immediately that it was
corrupted.
> Oh, yeah. If I remember correctly, this gets really tricky if you
actually
> altered one of the binaries on the source or destination branch and CVS
attempts
> to merge binaries. Hmm. Maybe that can't happen anyway if '-M COPY' is
set.
> Anyhow, there are issues here I am probably unaware of.
>
...which is why in our cvswrappers file, for every binary file, we also
specify -m
'COPY', as in:
*.jpg -k 'b' -m 'COPY'
David Martin