diff options
author | Loïc Hoguin <[email protected]> | 2018-03-13 10:40:14 +0100 |
---|---|---|
committer | Loïc Hoguin <[email protected]> | 2018-03-13 10:40:14 +0100 |
commit | b9c8d86502a76cf3a72af30fc6aa0fc88ca7afff (patch) | |
tree | c4904971099917551801c26f22b6283c869e4937 /src/cowboy_websocket.erl | |
parent | a89732e8e0fac2b2265007a11c05d4d0f6e6b1b0 (diff) | |
download | cowboy-b9c8d86502a76cf3a72af30fc6aa0fc88ca7afff.tar.gz cowboy-b9c8d86502a76cf3a72af30fc6aa0fc88ca7afff.tar.bz2 cowboy-b9c8d86502a76cf3a72af30fc6aa0fc88ca7afff.zip |
Handle supervisor calls properly everywhere
Diffstat (limited to 'src/cowboy_websocket.erl')
-rw-r--r-- | src/cowboy_websocket.erl | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/cowboy_websocket.erl b/src/cowboy_websocket.erl index ebb0fcd..6b59689 100644 --- a/src/cowboy_websocket.erl +++ b/src/cowboy_websocket.erl @@ -250,6 +250,10 @@ handler_loop(State=#state{socket=Socket, messages={OK, Closed, Error}, websocket_close(State, HandlerState, timeout); {timeout, OlderTRef, ?MODULE} when is_reference(OlderTRef) -> handler_loop(State, HandlerState, SoFar); + %% Calls from supervisor module. + {'$gen_call', From, Call} -> + cowboy_children:handle_supervisor_call(Call, From, [], ?MODULE), + handler_loop(State, HandlerState, SoFar); Message -> handler_call(State, HandlerState, SoFar, websocket_info, Message, fun handler_before_loop/3) |