Remerge of hashtag following (#341)
[akkoma] / lib / pleroma / web / activity_pub / activity_pub.ex
index 8233bcbf8f36edb05bf6be51ac5079a6241e4df4..3f46a8ecb18d6f35c2785f268311b69dff153457 100644 (file)
@@ -946,13 +946,15 @@ defmodule Pleroma.Web.ActivityPub.ActivityPub do
   end
 
   defp restrict_recipients_or_hashtags(query, recipients, _user, hashtag_ids) do
-    from(
-      [activity, object] in query,
-      join: hto in "hashtags_objects",
+    from([activity, object] in query)
+    |> join(:left, [activity, object], hto in "hashtags_objects",
       on: hto.object_id == object.id,
-      where:
-        (hto.hashtag_id in ^hashtag_ids and ^Constants.as_public() in activity.recipients) or
-          fragment("? && ?", ^recipients, activity.recipients)
+      as: :hto
+    )
+    |> where(
+      [activity, object, hto: hto],
+      (hto.hashtag_id in ^hashtag_ids and ^Constants.as_public() in activity.recipients) or
+        fragment("? && ?", ^recipients, activity.recipients)
     )
   end