Mercurial > jhg
comparison src/com/tmate/hgkit/ll/HgDirstate.java @ 11:d46773d89a19
Boundary error in dirstate entry, explicit encoding to face troubles (if any) asap.
author | Artem Tikhomirov <tikhomirov.artem@gmail.com> |
---|---|
date | Sat, 25 Dec 2010 22:19:31 +0100 |
parents | 382cfe9463db |
children | 181fccc176ef |
comparison
equal
deleted
inserted
replaced
10:382cfe9463db | 11:d46773d89a19 |
---|---|
60 String fn1 = null, fn2 = null; | 60 String fn1 = null, fn2 = null; |
61 byte[] name = new byte[nameLen]; | 61 byte[] name = new byte[nameLen]; |
62 da.readBytes(name, 0, nameLen); | 62 da.readBytes(name, 0, nameLen); |
63 for (int i = 0; i < nameLen; i++) { | 63 for (int i = 0; i < nameLen; i++) { |
64 if (name[i] == 0) { | 64 if (name[i] == 0) { |
65 fn1 = new String(name, 0, i); | 65 fn1 = new String(name, 0, i, "UTF-8"); // XXX unclear from documentation what encoding is used there |
66 fn2 = new String(name, i+1, nameLen); | 66 fn2 = new String(name, i+1, nameLen - i - 1, "UTF-8"); // need to check with different system codepages |
67 break; | 67 break; |
68 } | 68 } |
69 } | 69 } |
70 if (fn1 == null) { | 70 if (fn1 == null) { |
71 fn1 = new String(name); | 71 fn1 = new String(name); |