From 10ad653ce5169ed362ad4464c09588d2c9c3b6c1 Mon Sep 17 00:00:00 2001 From: Jon Skeet Date: Fri, 15 Aug 2008 20:48:16 +0100 Subject: Reflect Java source code. --- csharp/ProtocolBuffers.Test/UnknownFieldSetTest.cs | 15 +++++++++++++++ csharp/ProtocolBuffers/UnknownFieldSet.cs | 1 - 2 files changed, 15 insertions(+), 1 deletion(-) (limited to 'csharp') diff --git a/csharp/ProtocolBuffers.Test/UnknownFieldSetTest.cs b/csharp/ProtocolBuffers.Test/UnknownFieldSetTest.cs index 921bc066..12ed4120 100644 --- a/csharp/ProtocolBuffers.Test/UnknownFieldSetTest.cs +++ b/csharp/ProtocolBuffers.Test/UnknownFieldSetTest.cs @@ -295,5 +295,20 @@ namespace Google.ProtocolBuffers { } } + [Test] + public void LargeVarint() { + ByteString data = + UnknownFieldSet.CreateBuilder() + .AddField(1, + UnknownField.CreateBuilder() + .AddVarint(0x7FFFFFFFFFFFFFFFL) + .Build()) + .Build() + .ToByteString(); + UnknownFieldSet parsed = UnknownFieldSet.ParseFrom(data); + UnknownField field = parsed[1]; + Assert.AreEqual(1, field.VarintList.Count); + Assert.AreEqual(0x7FFFFFFFFFFFFFFFUL, field.VarintList[0]); + } } } diff --git a/csharp/ProtocolBuffers/UnknownFieldSet.cs b/csharp/ProtocolBuffers/UnknownFieldSet.cs index 4e3e4e95..3d3e38ea 100644 --- a/csharp/ProtocolBuffers/UnknownFieldSet.cs +++ b/csharp/ProtocolBuffers/UnknownFieldSet.cs @@ -314,7 +314,6 @@ namespace Google.ProtocolBuffers { int number = WireFormat.GetTagFieldNumber(tag); switch (WireFormat.GetTagWireType(tag)) { case WireFormat.WireType.Varint: - // TODO(jonskeet): Check this is correct (different to Java) GetFieldBuilder(number).AddVarint(input.ReadUInt64()); return true; case WireFormat.WireType.Fixed64: -- cgit v1.2.3