[cvsnt] Unicode bug

kurihiro jr3hkrbr at yahoo.co.jp
Wed Dec 10 07:12:25 GMT 2003


Thank you for reply.

Tony wrote:
> The OP registered the files as binary, which means that
there is no 
> unicode processing at all (so BOM makes no difference). 
With -kb you 
> always get back exactly what you put in.  Since he's
using a 
> non-standard server though it's impossible to tell what
might be going 
> on (the patch on the website is dozens of files,
including some that can 
> cause major breakage if it's not handled carefully).


> >Cvsnt is supposed to be able to handle unicode files,
but I have no direct
> >knowledge of how well it works (sounds like you've
checked it out a bit).
>
> FYI I just checked -kb just to be sure and it works fine
- no
> corruption or anything.


I'm annoying why you (not only Tony) can success.
I don't think asian OS environment is related to.

I checked again with cvsnt2.0.13 and cvs1.11.1p1.

cvs1.11.1p1 server  +  cvsnt2.0.13 client : OK
cvsnt2.0.13 server  +  cvsnt2.0.13 client : NG
cvsnt2.0.13 :local:                       : NG

My procedure is follow.

1. Prepare Unicode file. Name is 'VideoSetup.txt'. (Real
our file)

--- file contents is below ---
[VideoControl Class]
0
4F800F8
0
0
0,0,608,384
16,46,608,384
4
0
4
0,191
1,95
2,0
3,107
255,255
1
--- file end -----------------

Binary is
0000_0000  FF FE 5B 00 56 00 69 00 64 00 65 00 6F 00 43 00
 ..[.V.i.d.e.o.C.
0000_0010  6F 00 6E 00 74 00 72 00 6F 00 6C 00 20 00 43 00
 o.n.t.r.o.l. .C.
0000_0020  6C 00 61 00 73 00 73 00 5D 00 0D 00 0A 00 30 00
 l.a.s.s.].....0.
.....

2. Add as binary

cvs add -kb VideoSetup.txt
cvs commit -m aloha VideoSetup.txt

3. Edit the VideoSetup.txt. 
   For example, remove 6th line.

4.
cvs commit -m aloha2 VideoSetup.txt

5. Take back first version 1.1

cvs update -r1.1 VideoSetup.txt


Then, with cvsnt, if one has luck,
he can get file, but the file is different from real first
one.
if one doesn't have luck, he can't get file.

In that case, repository HEAD(1.2) part is unicode binary,
and the diff part for 1.1 is clear text.
That diff part should be unicode binary also.

In the cvsnt code,
diff function has -k(o/u/b) option information,
but file contents affect the diff mode (unicode or not).


If my procedure is wrong, please inform me.

Hiroshi


__________________________________________________
Do You Yahoo!?
Yahoo! BB is Broadband by Yahoo!
http://bb.yahoo.co.jp/




More information about the cvsnt mailing list