about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--app/services/fan_out_on_write_service.rb9
1 files changed, 7 insertions, 2 deletions
diff --git a/app/services/fan_out_on_write_service.rb b/app/services/fan_out_on_write_service.rb
index 1e12def33..2e3061b07 100644
--- a/app/services/fan_out_on_write_service.rb
+++ b/app/services/fan_out_on_write_service.rb
@@ -25,15 +25,20 @@ class FanOutOnWriteService < BaseService
 
     return if status.account.silenced?
 
-    deliver_to_public(status.reblog) if status.local? && status.reblog? && status.reblog.public_visibility? && !status.reblog.account.silenced?
+    if status.reblog?
+      return deliver_to_public(status.reblog) if status.local? && status.reblog.public_visibility? && !status.reblog.account.silenced?
 
-    return if status.reblog? || !status.public_visibility?
+      return
+    end
+
+    return unless status.public_visibility?
 
     deliver_to_hashtags(status)
 
     return if status.reply? && status.in_reply_to_account_id != status.account_id && !Setting.show_replies_in_public_timelines
 
     deliver_to_media(status) if status.media_attachments.any?
+    deliver_to_public(status) if status.local?
   end
 
   private