diff --git a/websocket-sharp/Server/WebSocketServer.cs b/websocket-sharp/Server/WebSocketServer.cs index 8815ffe1..e8013094 100644 --- a/websocket-sharp/Server/WebSocketServer.cs +++ b/websocket-sharp/Server/WebSocketServer.cs @@ -1078,36 +1078,12 @@ namespace WebSocketSharp.Server public void Stop (CloseStatusCode code, string reason) { string msg; - if (!checkIfAvailable (false, true, false, false, out msg)) { - _logger.Error (msg); - return; - } - if (!WebSocket.CheckParametersForClose (code, reason, false, out msg)) { _logger.Error (msg); return; } - lock (_sync) { - if (!checkIfAvailable (false, true, false, false, out msg)) { - _logger.Error (msg); - return; - } - - _state = ServerState.ShuttingDown; - } - - stopReceiving (5000); - - if (code == CloseStatusCode.NoStatus) { - _services.Stop (new CloseEventArgs (), true, true); - } - else { - var send = !code.IsReserved (); - _services.Stop (new CloseEventArgs (code, reason), send, send); - } - - _state = ServerState.Stop; + stop ((ushort) code, reason); } #endregion