diff options
author | Thibaut Girka <thib@sitedethib.com> | 2019-03-13 15:16:02 +0100 |
---|---|---|
committer | Thibaut Girka <thib@sitedethib.com> | 2019-03-13 15:16:02 +0100 |
commit | 02062aab55cb6f8da527998a210775c2ad695eed (patch) | |
tree | ab606ee84d964f28dad5bc77cfbd49b5c12849fa /app/workers | |
parent | c2857c976c7d4a8bbd02c3c18569913f2bf8a034 (diff) | |
parent | 06663fcf87fe0d6bc71336e6f212b82f098066d7 (diff) |
Merge branch 'master' into glitch-soc/merge-upstream
Conflicts: - app/controllers/about_controller.rb - app/controllers/tags_controller.rb - app/views/about/show.html.haml - spec/views/about/show.html.haml_spec.rb
Diffstat (limited to 'app/workers')
-rw-r--r-- | app/workers/activitypub/distribute_poll_update_worker.rb | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/app/workers/activitypub/distribute_poll_update_worker.rb b/app/workers/activitypub/distribute_poll_update_worker.rb index 02da583cd..5536bd744 100644 --- a/app/workers/activitypub/distribute_poll_update_worker.rb +++ b/app/workers/activitypub/distribute_poll_update_worker.rb @@ -28,13 +28,16 @@ class ActivityPub::DistributePollUpdateWorker def inboxes return @inboxes if defined?(@inboxes) - target_accounts = @status.mentions.map(&:account).reject(&:local?) - target_accounts += @status.reblogs.map(&:account).reject(&:local?) - target_accounts += @status.poll.votes.map(&:account).reject(&:local?) - target_accounts.uniq!(&:id) - @inboxes = target_accounts.select(&:activitypub?).pluck(&:inbox_url) - @inboxes += @account.followers.inboxes unless @status.direct_visibility? + + @inboxes = [@status.mentions, @status.reblogs, @status.poll.votes].flat_map do |relation| + relation.includes(:account).map do |record| + record.account.preferred_inbox_url if !record.account.local? && record.account.activitypub? + end + end + + @inboxes.concat(@account.followers.inboxes) unless @status.direct_visibility? @inboxes.uniq! + @inboxes.compact! @inboxes end |