aboutsummaryrefslogtreecommitdiff
path: root/src/ProtocolBuffers/ByteString.cs
diff options
context:
space:
mode:
authorJon Skeet <skeet@pobox.com>2013-08-13 15:14:17 +0100
committerJon Skeet <skeet@pobox.com>2013-08-13 15:14:17 +0100
commitdc8149fc64e589baed39022a08c882c8b19e3094 (patch)
tree5c54b2c7a887515c359270e4fc8cf8b298b654de /src/ProtocolBuffers/ByteString.cs
parentf86edcbb46c7776099b36130ad19f10a2e92e186 (diff)
downloadprotobuf-dc8149fc64e589baed39022a08c882c8b19e3094.tar.gz
protobuf-dc8149fc64e589baed39022a08c882c8b19e3094.tar.bz2
protobuf-dc8149fc64e589baed39022a08c882c8b19e3094.zip
Optimize FromBase64String to return Empty when presented with an empty string.
This fixes issue 61.
Diffstat (limited to 'src/ProtocolBuffers/ByteString.cs')
-rw-r--r--src/ProtocolBuffers/ByteString.cs4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/ProtocolBuffers/ByteString.cs b/src/ProtocolBuffers/ByteString.cs
index 8b7bd06c..434865b7 100644
--- a/src/ProtocolBuffers/ByteString.cs
+++ b/src/ProtocolBuffers/ByteString.cs
@@ -129,7 +129,9 @@ namespace Google.ProtocolBuffers
/// </summary>
public static ByteString FromBase64(string bytes)
{
- return new ByteString(Convert.FromBase64String(bytes));
+ // By handling the empty string explicitly, we not only optimize but we fix a
+ // problem on CF 2.0. See issue 61 for details.
+ return bytes == "" ? Empty : new ByteString(Convert.FromBase64String(bytes));
}
/// <summary>