diff --git a/websocket-sharp/Net/WebSockets/HttpListenerWebSocketContext.cs b/websocket-sharp/Net/WebSockets/HttpListenerWebSocketContext.cs index 86e4ff05..6cb5d53a 100644 --- a/websocket-sharp/Net/WebSockets/HttpListenerWebSocketContext.cs +++ b/websocket-sharp/Net/WebSockets/HttpListenerWebSocketContext.cs @@ -224,10 +224,16 @@ namespace WebSocketSharp.Net.WebSockets /// public override IEnumerable SecWebSocketProtocols { get { - var protocols = _context.Request.Headers["Sec-WebSocket-Protocol"]; - if (protocols != null) { - foreach (var protocol in protocols.Split (',')) - yield return protocol.Trim (); + var val = _context.Request.Headers["Sec-WebSocket-Protocol"]; + if (val == null || val.Length == 0) + yield break; + + foreach (var elm in val.Split (',')) { + var protocol = elm.Trim (); + if (protocol.Length == 0) + continue; + + yield return protocol; } } }