aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Jon Skeet <jonskeet@google.com>2015-08-06 11:40:43 +0100
committerGravatar Jon Skeet <jonskeet@google.com>2015-08-06 11:40:43 +0100
commit5bdc57292f2a21706ff1dab21652fb8e1f058eb7 (patch)
treec313720a0b955c6d24f68a3a3d770c0a3eb0f556
parente7f88ff1294ada0fca19334ed2c844cdb98ea2f6 (diff)
Generated code for previous commit.
-rw-r--r--csharp/src/AddressBook/Addressbook.cs15
-rw-r--r--csharp/src/Google.Protobuf.Conformance/Conformance.cs25
-rw-r--r--csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs35
-rw-r--r--csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs5
-rw-r--r--csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs5
-rw-r--r--csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs50
-rw-r--r--csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs175
-rw-r--r--csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs20
-rw-r--r--csharp/src/Google.Protobuf.Test/WellKnownTypes/WrappersTest.cs23
-rw-r--r--csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs6
-rw-r--r--csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs110
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/Any.cs5
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/Api.cs10
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs5
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs5
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs5
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs5
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs15
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs5
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/Type.cs25
-rw-r--r--csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs45
21 files changed, 142 insertions, 452 deletions
diff --git a/csharp/src/AddressBook/Addressbook.cs b/csharp/src/AddressBook/Addressbook.cs
index 85fa2977..f2be5bae 100644
--- a/csharp/src/AddressBook/Addressbook.cs
+++ b/csharp/src/AddressBook/Addressbook.cs
@@ -189,10 +189,7 @@ namespace Google.Protobuf.Examples.AddressBook {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -335,10 +332,7 @@ namespace Google.Protobuf.Examples.AddressBook {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Number = input.ReadString();
@@ -441,10 +435,7 @@ namespace Google.Protobuf.Examples.AddressBook {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
people_.AddEntriesFrom(input, _repeated_people_codec);
diff --git a/csharp/src/Google.Protobuf.Conformance/Conformance.cs b/csharp/src/Google.Protobuf.Conformance/Conformance.cs
index 50a6756c..e905d4e4 100644
--- a/csharp/src/Google.Protobuf.Conformance/Conformance.cs
+++ b/csharp/src/Google.Protobuf.Conformance/Conformance.cs
@@ -321,10 +321,7 @@ namespace Conformance {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
ProtobufPayload = input.ReadBytes();
@@ -557,10 +554,7 @@ namespace Conformance {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
ParseError = input.ReadString();
@@ -1829,10 +1823,7 @@ namespace Conformance {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
OptionalInt32 = input.ReadInt32();
@@ -2256,10 +2247,7 @@ namespace Conformance {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
A = input.ReadInt32();
@@ -2373,10 +2361,7 @@ namespace Conformance {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
C = input.ReadInt32();
diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs b/csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs
index f6835c4b..e9e18193 100644
--- a/csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs
+++ b/csharp/src/Google.Protobuf.Test/TestProtos/MapUnittestProto3.cs
@@ -476,10 +476,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
mapInt32Int32_.AddEntriesFrom(input, _map_mapInt32Int32_codec);
@@ -648,10 +645,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
if (testMap_ == null) {
@@ -748,10 +742,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
mapInt32Message_.AddEntriesFrom(input, _map_mapInt32Message_codec);
@@ -859,10 +850,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
map1_.AddEntriesFrom(input, _map_map1_codec);
@@ -1156,10 +1144,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
mapInt32Int32_.AddEntriesFrom(input, _map_mapInt32Int32_codec);
@@ -1309,10 +1294,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
type_.AddEntriesFrom(input, _map_type_codec);
@@ -1416,10 +1398,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
entry_.AddEntriesFrom(input, _map_entry_codec);
diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs
index 646a01a2..bf527ac5 100644
--- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs
+++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportProto3.cs
@@ -139,10 +139,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
D = input.ReadInt32();
diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs
index 225775a3..ec460906 100644
--- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs
+++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestImportPublicProto3.cs
@@ -125,10 +125,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
E = input.ReadInt32();
diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs
index 1bf40ead..63119a34 100644
--- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs
+++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestIssues.cs
@@ -142,10 +142,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -222,10 +219,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -302,10 +296,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -441,10 +432,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
value_ = (global::UnitTest.Issues.TestProtos.NegativeEnum) input.ReadEnum();
@@ -534,10 +522,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -730,10 +715,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
PrimitiveValue = input.ReadInt32();
@@ -860,10 +842,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Item = input.ReadInt32();
@@ -987,10 +966,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Types_ = input.ReadInt32();
@@ -1075,10 +1051,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -1343,10 +1316,7 @@ namespace UnitTest.Issues.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
PlainString = input.ReadString();
diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs
index 58e5be65..bf4590ad 100644
--- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs
+++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestProto3.cs
@@ -1211,10 +1211,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
SingleInt32 = input.ReadInt32();
@@ -1546,10 +1543,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Bb = input.ReadInt32();
@@ -1698,10 +1692,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
if (child_ == null) {
@@ -1818,10 +1809,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
DeprecatedInt32 = input.ReadInt32();
@@ -1923,10 +1911,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
C = input.ReadInt32();
@@ -2006,10 +1991,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -2110,10 +2092,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
if (foreignNested_ == null) {
@@ -2240,10 +2219,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
A = input.ReadInt32();
@@ -2374,10 +2350,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
if (a_ == null) {
@@ -2489,10 +2462,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
if (bb_ == null) {
@@ -2622,10 +2592,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
if (a_ == null) {
@@ -2859,10 +2826,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
PrimitiveField = input.ReadInt32();
@@ -3066,10 +3030,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
MyInt = input.ReadInt64();
@@ -3209,10 +3170,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Bb = input.ReadInt32();
@@ -3323,10 +3281,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
sparseEnum_ = (global::Google.Protobuf.TestProtos.TestSparseEnum) input.ReadEnum();
@@ -3428,10 +3383,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Data = input.ReadString();
@@ -3525,10 +3477,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
data_.AddEntriesFrom(input, _repeated_data_codec);
@@ -3630,10 +3579,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Data = input.ReadBytes();
@@ -3735,10 +3681,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Data = input.ReadBytes();
@@ -3840,10 +3783,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Data = input.ReadInt32();
@@ -3945,10 +3885,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Data = input.ReadUInt32();
@@ -4050,10 +3987,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Data = input.ReadInt64();
@@ -4155,10 +4089,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Data = input.ReadUInt64();
@@ -4260,10 +4191,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Data = input.ReadBool();
@@ -4438,10 +4366,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
FooInt = input.ReadInt32();
@@ -4730,10 +4655,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 722:
case 720: {
@@ -5075,10 +4997,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 722:
case 720: {
@@ -5308,10 +5227,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 98:
case 101: {
@@ -5439,10 +5355,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
A = input.ReadString();
@@ -5522,10 +5435,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -5601,10 +5511,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -5680,10 +5587,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -5759,10 +5663,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -5838,10 +5739,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
@@ -5917,10 +5815,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
diff --git a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs
index 0840fa27..16634e03 100644
--- a/csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs
+++ b/csharp/src/Google.Protobuf.Test/TestProtos/UnittestWellKnownTypes.cs
@@ -679,10 +679,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
if (anyField_ == null) {
@@ -1136,10 +1133,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
anyField_.AddEntriesFrom(input, _repeated_anyField_codec);
@@ -1757,10 +1751,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
global::Google.Protobuf.WellKnownTypes.Any subBuilder = new global::Google.Protobuf.WellKnownTypes.Any();
@@ -2205,10 +2196,7 @@ namespace Google.Protobuf.TestProtos {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
anyField_.AddEntriesFrom(input, _map_anyField_codec);
diff --git a/csharp/src/Google.Protobuf.Test/WellKnownTypes/WrappersTest.cs b/csharp/src/Google.Protobuf.Test/WellKnownTypes/WrappersTest.cs
index d2a07057..fbc0ff07 100644
--- a/csharp/src/Google.Protobuf.Test/WellKnownTypes/WrappersTest.cs
+++ b/csharp/src/Google.Protobuf.Test/WellKnownTypes/WrappersTest.cs
@@ -322,5 +322,28 @@ namespace Google.Protobuf.WellKnownTypes
// A normal implementation would have 0 now, as the explicit default would have been overwritten the 5.
Assert.AreEqual(5, message.Int32Field);
}
+
+ [Test]
+ public void UnknownFieldInWrapper()
+ {
+ var stream = new MemoryStream();
+ var output = new CodedOutputStream(stream);
+ var wrapperTag = WireFormat.MakeTag(TestWellKnownTypes.Int32FieldFieldNumber, WireFormat.WireType.LengthDelimited);
+ var unknownTag = WireFormat.MakeTag(15, WireFormat.WireType.Varint);
+ var valueTag = WireFormat.MakeTag(Int32Value.ValueFieldNumber, WireFormat.WireType.Varint);
+
+ output.WriteTag(wrapperTag);
+ output.WriteLength(4); // unknownTag + value 5 + valueType + value 6, each 1 byte
+ output.WriteTag(unknownTag);
+ output.WriteInt32((int) valueTag); // Sneakily "pretend" it's a tag when it's really a value
+ output.WriteTag(valueTag);
+ output.WriteInt32(6);
+
+ output.Flush();
+ stream.Position = 0;
+
+ var message = TestWellKnownTypes.Parser.ParseFrom(stream);
+ Assert.AreEqual(6, message.Int32Field);
+ }
}
}
diff --git a/csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs b/csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs
index 6905a6a3..01d55395 100644
--- a/csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs
+++ b/csharp/src/Google.Protobuf/InvalidProtocolBufferException.cs
@@ -45,6 +45,12 @@ namespace Google.Protobuf
{
}
+ internal static InvalidProtocolBufferException MoreDataAvailable()
+ {
+ return new InvalidProtocolBufferException(
+ "Completed reading a message while more data was available in the stream.");
+ }
+
internal static InvalidProtocolBufferException TruncatedMessage()
{
return new InvalidProtocolBufferException(
diff --git a/csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs b/csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs
index d66bdb80..59c5e69b 100644
--- a/csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs
+++ b/csharp/src/Google.Protobuf/Reflection/DescriptorProtoFile.cs
@@ -242,10 +242,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
file_.AddEntriesFrom(input, _repeated_file_codec);
@@ -539,10 +536,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -833,10 +827,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -1000,10 +991,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Start = input.ReadInt32();
@@ -1131,10 +1119,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Start = input.ReadInt32();
@@ -1424,10 +1409,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -1597,10 +1579,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -1741,10 +1720,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -1904,10 +1880,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -2059,10 +2032,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -2288,10 +2258,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -2716,10 +2683,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
JavaPackage = input.ReadString();
@@ -2969,10 +2933,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
MessageSetWireFormat = input.ReadBool();
@@ -3214,10 +3175,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
ctype_ = (global::Google.Protobuf.Reflection.FieldOptions.Types.CType) input.ReadEnum();
@@ -3397,10 +3355,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 16: {
AllowAlias = input.ReadBool();
@@ -3524,10 +3479,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Deprecated = input.ReadBool();
@@ -3647,10 +3599,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 264: {
Deprecated = input.ReadBool();
@@ -3770,10 +3719,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 264: {
Deprecated = input.ReadBool();
@@ -4003,10 +3949,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 18: {
name_.AddEntriesFrom(input, _repeated_name_codec);
@@ -4155,10 +4098,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
NamePart_ = input.ReadString();
@@ -4261,10 +4201,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
location_.AddEntriesFrom(input, _repeated_location_codec);
@@ -4431,10 +4368,7 @@ namespace Google.Protobuf.Reflection {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10:
case 8: {
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Any.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Any.cs
index 9fc653b0..204b37cf 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/Any.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/Any.cs
@@ -150,10 +150,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
TypeUrl = input.ReadString();
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Api.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Api.cs
index 8a94e7b0..a5f95093 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/Api.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/Api.cs
@@ -213,10 +213,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -439,10 +436,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs
index d74636d4..aa34f2d8 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/Duration.cs
@@ -151,10 +151,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Seconds = input.ReadInt64();
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs
index 0f1d7f50..7d699c1d 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/Empty.cs
@@ -106,10 +106,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
}
}
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs b/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs
index 9bd47a96..0dac4403 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/FieldMask.cs
@@ -120,10 +120,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
paths_.AddEntriesFrom(input, _repeated_paths_codec);
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs b/csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs
index ae79884f..8347999d 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/SourceContext.cs
@@ -129,10 +129,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
FileName = input.ReadString();
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs
index ea8b1055..1e8a8236 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/Struct.cs
@@ -139,10 +139,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
fields_.AddEntriesFrom(input, _map_fields_codec);
@@ -392,10 +389,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
kind_ = input.ReadEnum();
@@ -520,10 +514,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
values_.AddEntriesFrom(input, _repeated_values_codec);
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs
index 89355bdc..d7c0954f 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/Timestamp.cs
@@ -151,10 +151,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Seconds = input.ReadInt64();
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Type.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Type.cs
index 36116a65..ff2ecc57 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/Type.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/Type.cs
@@ -226,10 +226,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -496,10 +493,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
kind_ = (global::Google.Protobuf.WellKnownTypes.Field.Types.Kind) input.ReadEnum();
@@ -716,10 +710,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -872,10 +863,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
@@ -1010,10 +998,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Name = input.ReadString();
diff --git a/csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs b/csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs
index 19ed599d..9ecaf47c 100644
--- a/csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs
+++ b/csharp/src/Google.Protobuf/WellKnownTypes/Wrappers.cs
@@ -138,10 +138,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 9: {
Value = input.ReadDouble();
@@ -243,10 +240,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 13: {
Value = input.ReadFloat();
@@ -348,10 +342,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Value = input.ReadInt64();
@@ -453,10 +444,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Value = input.ReadUInt64();
@@ -558,10 +546,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Value = input.ReadInt32();
@@ -663,10 +648,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Value = input.ReadUInt32();
@@ -768,10 +750,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 8: {
Value = input.ReadBool();
@@ -873,10 +852,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Value = input.ReadString();
@@ -978,10 +954,7 @@ namespace Google.Protobuf.WellKnownTypes {
while ((tag = input.ReadTag()) != 0) {
switch(tag) {
default:
- if (pb::WireFormat.IsEndGroupTag(tag)) {
- return;
- }
- input.ConsumeLastField();
+ input.SkipLastField();
break;
case 10: {
Value = input.ReadBytes();