Fix WebSocket unknown state

This commit is contained in:
Alexandre de Souza 2025-07-15 16:58:32 -03:00
parent 81857523fc
commit 775a7f85f7
No known key found for this signature in database
GPG key ID: E39228FFBA346545

View file

@ -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} ->