diff --git a/websocket-sharp/Server/HttpServer.cs b/websocket-sharp/Server/HttpServer.cs index 6b424367..31bf64f1 100644 --- a/websocket-sharp/Server/HttpServer.cs +++ b/websocket-sharp/Server/HttpServer.cs @@ -594,13 +594,20 @@ namespace WebSocketSharp.Server } set { - var msg = _state.CheckIfAvailable (true, false, false); - if (msg != null) { - _log.Error (msg); + string msg; + if (!canSet (out msg)) { + _log.Warn (msg); return; } - _listener.UserCredentialsFinder = value; + lock (_sync) { + if (!canSet (out msg)) { + _log.Warn (msg); + return; + } + + _listener.UserCredentialsFinder = value; + } } }