After the dicussions with Jakub Narebski I realized we aren't as lenient in parsing hex strings as C Git is. So make it so. I also added some tests for the lower level parts of the native protocol, the pkt-line format. Testing is still far from complete in this area of the code, but we're slightly better now. Shawn O. Pearce (7): Move hex parsing functions to RawParseUtil, accept upper case Disambiguate pkt-line "0000" from "0004" Move PacketLineIn hex parsing to RawParseUtils Add tests for RawParseUtil's hex string parsing Add tests for PacketLineIn Add tests for PacketLineOut Add tests for SideBandOutputStream .../tst/org/spearce/jgit/lib/T0001_ObjectId.java | 10 +- .../spearce/jgit/transport/PacketLineInTest.java | 262 ++++++++++++++++++++ .../spearce/jgit/transport/PacketLineOutTest.java | 175 +++++++++++++ .../jgit/transport/SideBandOutputStreamTest.java | 146 +++++++++++ .../jgit/util/RawParseUtils_HexParseTest.java | 158 ++++++++++++ .../org/spearce/jgit/lib/AbbreviatedObjectId.java | 8 +- .../src/org/spearce/jgit/lib/AnyObjectId.java | 36 --- .../src/org/spearce/jgit/lib/MutableObjectId.java | 11 +- .../src/org/spearce/jgit/lib/ObjectId.java | 19 +- .../spearce/jgit/transport/BasePackConnection.java | 5 +- .../jgit/transport/BasePackPushConnection.java | 2 +- .../org/spearce/jgit/transport/DaemonClient.java | 5 +- .../org/spearce/jgit/transport/PacketLineIn.java | 44 +--- .../org/spearce/jgit/transport/ReceivePack.java | 6 +- .../src/org/spearce/jgit/transport/UploadPack.java | 4 +- .../src/org/spearce/jgit/util/RawParseUtils.java | 110 ++++++++- 16 files changed, 893 insertions(+), 108 deletions(-) create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/transport/PacketLineInTest.java create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/transport/PacketLineOutTest.java create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/transport/SideBandOutputStreamTest.java create mode 100644 org.spearce.jgit.test/tst/org/spearce/jgit/util/RawParseUtils_HexParseTest.java -- 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