Added support for negative enum values and tests
diff --git a/src/ProtocolBuffers/CodedOutputStream.cs b/src/ProtocolBuffers/CodedOutputStream.cs
index c14f5e0..09099ee 100644
--- a/src/ProtocolBuffers/CodedOutputStream.cs
+++ b/src/ProtocolBuffers/CodedOutputStream.cs
@@ -373,7 +373,7 @@
public void WriteEnum(int fieldNumber, string fieldName, int value, object rawValue)
{
WriteTag(fieldNumber, WireFormat.WireType.Varint);
- WriteRawVarint32((uint) value);
+ WriteInt32NoTag(value);
}
public void WriteSFixed32(int fieldNumber, string fieldName, int value)
@@ -648,7 +648,7 @@
public void WriteEnumNoTag(int value)
{
- WriteRawVarint32((uint) value);
+ WriteInt32NoTag(value);
}
public void WriteSFixed32NoTag(int value)