diff options
author | lain <lain@soykaf.club> | 2020-03-31 17:28:18 +0000 |
---|---|---|
committer | lain <lain@soykaf.club> | 2020-03-31 17:28:18 +0000 |
commit | 1b323ce1c668c6a26617a05dcc12ee255c764e88 (patch) | |
tree | 056ec37dd9d1771859fe2177a61e6789a8465c73 | |
parent | ecac57732a063c1ad01aeb5aa4eb9853b6f904e9 (diff) | |
download | pleroma-1b323ce1c668c6a26617a05dcc12ee255c764e88.tar.gz |
Apply suggestion to lib/pleroma/web/activity_pub/transmogrifier.ex
-rw-r--r-- | lib/pleroma/web/activity_pub/transmogrifier.ex | 21 |
1 files changed, 8 insertions, 13 deletions
diff --git a/lib/pleroma/web/activity_pub/transmogrifier.ex b/lib/pleroma/web/activity_pub/transmogrifier.ex index f82142979..a18ece6e7 100644 --- a/lib/pleroma/web/activity_pub/transmogrifier.ex +++ b/lib/pleroma/web/activity_pub/transmogrifier.ex @@ -1267,24 +1267,19 @@ defmodule Pleroma.Web.ActivityPub.Transmogrifier do {:error, :no_context} end - defp maybe_add_recipients_from_object(%{"object" => object} = data) do - to = data["to"] || [] - cc = data["cc"] || [] + defp maybe_add_recipients_from_object(%{"to" => [_ | _], "cc" => [_ | _]} = data), do: {:ok, data} - if to == [] && cc == [] do - if object = Object.normalize(object) do + defp maybe_add_recipients_from_object(%{"object" => object} = data) do + case Object.normalize(object) do + %{data: {"actor" => actor}} -> data = data - |> Map.put("to", [object.data["actor"]]) - |> Map.put("cc", cc) + |> Map.put("to", [actor]) + |> Map.put("cc", data["cc"] || []) {:ok, data} - else - {:error, "No actor on referenced object"} - end - else - {:ok, data} - end + nil -> {:error, :no_object} + _ -> {:error, :no_actor} end defp maybe_add_recipients_from_object(_) do |