diff --git a/lib/pleroma/web/activity_pub/activity_pub.ex b/lib/pleroma/web/activity_pub/activity_pub.ex index f7f6d047e..4ce2e6052 100644 --- a/lib/pleroma/web/activity_pub/activity_pub.ex +++ b/lib/pleroma/web/activity_pub/activity_pub.ex @@ -239,9 +239,11 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do activity in query, join: sender in User, on: sender.ap_id == activity.actor, + # Are non-direct statuses with no to/cc possible? where: - fragment("not data->'to' \\? ?", ^public) and fragment("not data->'cc' \\? ?", ^public) and - fragment("not data->'to' \\? ?", sender.follower_address) + fragment("not coalesce(data->'to' \\? ?, false)", ^public) and + fragment("not coalesce(data->'cc' \\? ?, false)", ^public) and + fragment("not coalesce(data->'to' \\? ?, false)", sender.follower_address) ) end