activitypub: properly filter out transitive activities concerning blocked users

This commit is contained in:
William Pitcock 2019-04-17 20:05:09 +00:00
commit 2140e164d7
2 changed files with 24 additions and 1 deletions

View file

@ -712,7 +712,7 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
from(
activity in query,
where: fragment("not (? = ANY(?))", activity.actor, ^blocks),
where: fragment("not (?->'to' \\?| ?)", activity.data, ^blocks),
where: fragment("not (? && ?)", activity.recipients, ^blocks),
where: fragment("not (split_part(?, '/', 3) = ANY(?))", activity.actor, ^domain_blocks)
)
end