diff --git a/websocket-sharp/Net/HttpUtility.cs b/websocket-sharp/Net/HttpUtility.cs index 24d7f0f2..53919a8d 100644 --- a/websocket-sharp/Net/HttpUtility.cs +++ b/websocket-sharp/Net/HttpUtility.cs @@ -529,6 +529,20 @@ namespace WebSocketSharp.Net output.WriteByte ((byte) num); } + private static void urlDecodeUnicode ( + byte[] bytes, int offset, Stream output + ) + { + var num = getNumber (bytes, offset + 2, 4); + if (num == -1) { + output.Write (bytes, offset, 6); + return; + } + + var decoded = Encoding.Unicode.GetBytes (new[] { (char) num }); + output.Write (decoded, 0, decoded.Length); + } + private static void urlEncode (byte b, Stream output) { if (b > 31 && b < 127) {