aboutsummaryrefslogtreecommitdiff
path: root/src/ProtocolBuffers/GeneratedBuilder.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/ProtocolBuffers/GeneratedBuilder.cs')
-rw-r--r--src/ProtocolBuffers/GeneratedBuilder.cs10
1 files changed, 6 insertions, 4 deletions
diff --git a/src/ProtocolBuffers/GeneratedBuilder.cs b/src/ProtocolBuffers/GeneratedBuilder.cs
index c678d66f..c3543be6 100644
--- a/src/ProtocolBuffers/GeneratedBuilder.cs
+++ b/src/ProtocolBuffers/GeneratedBuilder.cs
@@ -158,10 +158,12 @@ namespace Google.ProtocolBuffers {
}
public override TBuilder MergeUnknownFields(UnknownFieldSet unknownFields) {
- TMessage result = MessageBeingBuilt;
- result.SetUnknownFields(UnknownFieldSet.CreateBuilder(result.UnknownFields)
- .MergeFrom(unknownFields)
- .Build());
+ if (unknownFields != UnknownFieldSet.DefaultInstance) {
+ TMessage result = MessageBeingBuilt;
+ result.SetUnknownFields(UnknownFieldSet.CreateBuilder(result.UnknownFields)
+ .MergeFrom(unknownFields)
+ .Build());
+ }
return ThisBuilder;
}