Make unaddressed_message? condsider [] as empty
This commit is contained in:
parent
1df7d428bc
commit
871e9e8492
3 changed files with 8 additions and 4 deletions
1
changelog.d/fix-report-empty-fields.fix
Normal file
1
changelog.d/fix-report-empty-fields.fix
Normal file
|
|
@ -0,0 +1 @@
|
||||||
|
Fix reports being rejected when the activity had an empty CC or TO field (instead of not having them at all)
|
||||||
|
|
@ -82,7 +82,11 @@ defmodule Pleroma.Web.ActivityPub.Utils do
|
||||||
def unaddressed_message?(params),
|
def unaddressed_message?(params),
|
||||||
do:
|
do:
|
||||||
[params["to"], params["cc"], params["bto"], params["bcc"]]
|
[params["to"], params["cc"], params["bto"], params["bcc"]]
|
||||||
|> Enum.all?(&is_nil(&1))
|
|> Enum.all?(fn
|
||||||
|
nil -> true
|
||||||
|
[] -> true
|
||||||
|
_ -> false
|
||||||
|
end)
|
||||||
|
|
||||||
@spec recipient_in_message(User.t(), User.t(), map()) :: boolean()
|
@spec recipient_in_message(User.t(), User.t(), map()) :: boolean()
|
||||||
def recipient_in_message(%User{ap_id: ap_id} = recipient, %User{} = actor, params),
|
def recipient_in_message(%User{ap_id: ap_id} = recipient, %User{} = actor, params),
|
||||||
|
|
|
||||||
|
|
@ -1205,9 +1205,8 @@ defmodule Pleroma.Web.ActivityPub.ActivityPubControllerTest do
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"actor" => actor.ap_id,
|
"actor" => actor.ap_id,
|
||||||
"cc" => [
|
# CC and TO might either not exist at all, or be empty. We should be able to handle either.
|
||||||
reported_user.ap_id
|
# "cc" => [],
|
||||||
],
|
|
||||||
"content" => "test",
|
"content" => "test",
|
||||||
"context" => "context",
|
"context" => "context",
|
||||||
"id" => "http://#{remote_domain}/activities/02be56cf-35e3-46b4-b2c6-47ae08dfee9e",
|
"id" => "http://#{remote_domain}/activities/02be56cf-35e3-46b4-b2c6-47ae08dfee9e",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue