aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/pleroma/web/fed_sockets/adapter.ex4
-rw-r--r--lib/pleroma/web/fed_sockets/adapter/cowboy.ex7
2 files changed, 6 insertions, 5 deletions
diff --git a/lib/pleroma/web/fed_sockets/adapter.ex b/lib/pleroma/web/fed_sockets/adapter.ex
index 00ab2d056..edb22d1d9 100644
--- a/lib/pleroma/web/fed_sockets/adapter.ex
+++ b/lib/pleroma/web/fed_sockets/adapter.ex
@@ -43,7 +43,7 @@ defmodule Pleroma.Web.FedSockets.Adapter do
{:noreply, waiting_fetches}
end
- def process_message(%{"action" => "fetch", "uuid" => uuid, "data" => ap_id}, _, _) do
+ def process_message(%{"action" => "fetch", "uuid" => uuid, "data" => ap_id}, _, waiting_fetches) do
data = %{
"action" => "fetch_reply",
"status" => "processed",
@@ -51,7 +51,7 @@ defmodule Pleroma.Web.FedSockets.Adapter do
"data" => represent_item(ap_id)
}
- {:reply, {:text, Jason.encode!(data)}}
+ {:reply, {:text, Jason.encode!(data)}, waiting_fetches}
end
def process_message(
diff --git a/lib/pleroma/web/fed_sockets/adapter/cowboy.ex b/lib/pleroma/web/fed_sockets/adapter/cowboy.ex
index 880af929c..107d80849 100644
--- a/lib/pleroma/web/fed_sockets/adapter/cowboy.ex
+++ b/lib/pleroma/web/fed_sockets/adapter/cowboy.ex
@@ -95,7 +95,7 @@ defmodule Pleroma.Web.FedSockets.Adapter.Cowboy do
adapter_state: %{last_fetch_id_ref: last_fetch_id_ref, waiting_fetches: %{}}
}) do
{:ok, _owner} ->
- {:ok, %{origin: origin}}
+ {:ok, %{origin: origin, waiting_fetches: %{}}}
{:error, {:already_registered, _}} ->
{:stop, origin}
@@ -103,7 +103,7 @@ defmodule Pleroma.Web.FedSockets.Adapter.Cowboy do
end
@impl true
- def websocket_handle(:ping, socket_info), do: {:ok, socket_info}
+ def websocket_handle(:ping, state), do: {:ok, state}
def websocket_handle(
{:text, raw_message},
@@ -111,7 +111,8 @@ defmodule Pleroma.Web.FedSockets.Adapter.Cowboy do
) do
case Adapter.process_message(raw_message, origin, waiting_fetches) do
{:reply, frame, waiting_fetches} ->
- {:reply, frame, %{state | waiting_fetches: waiting_fetches}}
+ state = %{state | waiting_fetches: waiting_fetches}
+ {:reply, frame, state}
{:noreply, waiting_fetches} ->
{:ok, %{state | waiting_fetches: waiting_fetches}}