diff --git a/lib/modules/Protocols.pmod/WebSocket.pmod b/lib/modules/Protocols.pmod/WebSocket.pmod index 60ca881d9ae2e7ce7ed10a5821867c698731a81e..dc75c3cf629c446e163cc1df0e0e0c1353427cf5 100644 --- a/lib/modules/Protocols.pmod/WebSocket.pmod +++ b/lib/modules/Protocols.pmod/WebSocket.pmod @@ -442,10 +442,8 @@ class Request(function(array(string), Request:void) cb) { inherit Protocols.HTTP.Server.Request; protected void parse_request() { - if (!cb || !has_index(request_headers, "sec-websocket-key")) { - ::parse_request(); - return; - } else { + ::parse_request(); + if (cb && has_index(request_headers, "sec-websocket-key")) { string proto = request_headers["sec-websocket-protocol"]; array(string) protocols = proto ? proto / ", " : ({}); #ifdef WEBSOCKET_DEBUG