mirror of
https://github.com/livebook-dev/livebook.git
synced 2025-09-05 04:24:21 +08:00
Fix WebSocket unknown state
This commit is contained in:
parent
81857523fc
commit
775a7f85f7
1 changed files with 8 additions and 4 deletions
|
@ -85,15 +85,15 @@ defmodule Livebook.Teams.Connection do
|
|||
:keep_state_and_data
|
||||
end
|
||||
|
||||
def handle_event(:info, message, @no_state, data) when elem(message, 0) in @expected_messages do
|
||||
handle_websocket_message(message, data)
|
||||
end
|
||||
|
||||
def handle_event(:info, message, @no_state, %{http_conn: nil})
|
||||
when elem(message, 0) in @expected_messages do
|
||||
:keep_state_and_data
|
||||
end
|
||||
|
||||
def handle_event(:info, message, @no_state, data) when elem(message, 0) in @expected_messages do
|
||||
handle_websocket_message(message, data)
|
||||
end
|
||||
|
||||
def handle_event(:info, _message, @no_state, _data) do
|
||||
:keep_state_and_data
|
||||
end
|
||||
|
@ -116,6 +116,10 @@ defmodule Livebook.Teams.Connection do
|
|||
|
||||
# Private
|
||||
|
||||
defp handle_websocket_message(_message, %{http_conn: nil} = data) do
|
||||
{:keep_state, data, {:next_event, :internal, :connect}}
|
||||
end
|
||||
|
||||
defp handle_websocket_message(message, data) do
|
||||
case WebSocket.receive(data.http_conn, data.ref, data.websocket, message) do
|
||||
{:ok, conn, websocket, binaries} ->
|
||||
|
|
Loading…
Add table
Reference in a new issue