I have tried to build jgit using maven on Windows and build failed due to the failed test. The test QuotedStringGitPathStyleTest.testDequote_OctalAll was dependent on the system charset. If the test is run with -Dfile.encoding=Cp1251 under eclipse, it failed as well. This was cased that by the fact that corresponding test generated invalid UTF-8 character sequence for code points U+80 - U+FF. In that case the method RawParseUtils.decodeNoFallback fall backs to the default system encoding that is Cp1251 in my environment. The attached patch ensures that correct UTF-8 character sequence is used in the test. diff --git a/org.spearce.jgit.test/tst/org/spearce/jgit/util/QuotedStringGitPathStyleTest.java b/org.spearce.jgit.test/tst/org/spearce/jgit/util/QuotedStringGitPathStyleTest.java index 54fbd31..7d29f21 100644 --- a/org.spearce.jgit.test/tst/org/spearce/jgit/util/QuotedStringGitPathStyleTest.java +++ b/org.spearce.jgit.test/tst/org/spearce/jgit/util/QuotedStringGitPathStyleTest.java @@ -127,13 +127,22 @@ public void testDequote_NamedEscapes() { } public void testDequote_OctalAll() { - for (int i = 0; i < 256; i++) { - String s = Integer.toOctalString(i); - while (s.length() < 3) { - s = "0" + s; - } - assertDequote("" + (char) i, "\\" + s); + for (int i = 0; i < 127; i++) { + assertDequote("" + (char) i, octalEscape(i)); } + for (int i = 128; i < 256; i++) { + int f = 0xC0 | (i >> 6); + int s = 0x80 | (i & 0x3f); + assertDequote("" + (char) i, octalEscape(f)+octalEscape(s)); + } + } + + private String octalEscape(int i) { + String s = Integer.toOctalString(i); + while (s.length() < 3) { + s = "0" + s; + } + return "\\"+s; } public void testQuote_OctalAll() { -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html