Fix issue 10 - check serialized size before writing to stream
diff --git a/src/ProtocolBuffers.Test/TestProtos/UnitTestCustomOptionsProtoFile.cs b/src/ProtocolBuffers.Test/TestProtos/UnitTestCustomOptionsProtoFile.cs
index d2c3800..40ac8d3 100644
--- a/src/ProtocolBuffers.Test/TestProtos/UnitTestCustomOptionsProtoFile.cs
+++ b/src/ProtocolBuffers.Test/TestProtos/UnitTestCustomOptionsProtoFile.cs
@@ -432,6 +432,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
if (HasField1) {
output.WriteString(1, Field1);
}
@@ -637,6 +638,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -810,6 +812,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -993,6 +996,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -1166,6 +1170,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -1339,6 +1344,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -1512,6 +1518,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -1685,6 +1692,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -1858,6 +1866,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -2031,6 +2040,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}
@@ -2215,6 +2225,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
pb::ExtendableMessage<ComplexOptionType1, ComplexOptionType1.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
if (HasFoo) {
output.WriteInt32(1, Foo);
@@ -2459,6 +2470,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
if (HasWaldo) {
output.WriteInt32(1, Waldo);
}
@@ -2678,6 +2690,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
pb::ExtendableMessage<ComplexOptionType2, ComplexOptionType2.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
if (HasBar) {
output.WriteMessage(1, Bar);
@@ -3028,6 +3041,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
if (HasPlugh) {
output.WriteInt32(3, Plugh);
}
@@ -3233,6 +3247,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
if (HasQux) {
output.WriteInt32(1, Qux);
}
@@ -3501,6 +3516,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
if (HasXyzzy) {
output.WriteInt32(7593951, Xyzzy);
}
@@ -3705,6 +3721,7 @@
}
public override void WriteTo(pb::CodedOutputStream output) {
+ int size = SerializedSize;
UnknownFields.WriteTo(output);
}