diff options
Diffstat (limited to 'app/lib')
-rw-r--r-- | app/lib/feed_manager.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/app/lib/feed_manager.rb b/app/lib/feed_manager.rb index aaff9acd3..c2d3a2e2c 100644 --- a/app/lib/feed_manager.rb +++ b/app/lib/feed_manager.rb @@ -98,7 +98,7 @@ class FeedManager return true if Mute.where(account_id: receiver_id, target_account_id: check_for_mutes).any? - check_for_blocks = status.mentions.map(&:account_id) + check_for_blocks = status.mentions.pluck(:account_id) check_for_blocks.concat([status.reblog.account_id]) if status.reblog? return true if Block.where(account_id: receiver_id, target_account_id: check_for_blocks).any? @@ -109,7 +109,9 @@ class FeedManager should_filter &&= !(status.account_id == status.in_reply_to_account_id) # and it's not a self-reply return should_filter elsif status.reblog? # Filter out a reblog - return Block.where(account_id: status.reblog.account_id, target_account_id: receiver_id).exists? # or if the author of the reblogged status is blocking me + should_filter = Block.where(account_id: status.reblog.account_id, target_account_id: receiver_id).exists? # or if the author of the reblogged status is blocking me + should_filter ||= AccountDomainBlock.where(account_id: receiver_id, domain: status.reblog.account.domain).exists? # or the author's domain is blocked + return should_filter end false |