diff --git a/websocket-sharp/WebSocket.cs b/websocket-sharp/WebSocket.cs index 6b2a92b1..1befcfa0 100644 --- a/websocket-sharp/WebSocket.cs +++ b/websocket-sharp/WebSocket.cs @@ -2776,16 +2776,21 @@ namespace WebSocketSharp public void SetCookie (Cookie cookie) { lock (_forConn) { - var msg = checkIfAvailable (true, false, true, false, false, true) ?? - (cookie == null ? "'cookie' is null." : null); - - if (msg != null) { + string msg; + if (!checkIfAvailable (true, false, true, false, false, true, out msg)) { _logger.Error (msg); error ("An error has occurred in setting a cookie.", null); return; } + if (cookie == null) { + _logger.Error ("'cookie' is null."); + error ("An error has occurred in setting a cookie.", null); + + return; + } + lock (_cookies.SyncRoot) _cookies.SetOrRemove (cookie); }