]> cat aescling's git repositories - mastodon.git/commitdiff
Fix reports of already suspended accounts being recorded (#16047)
authorEugen Rochko <eugen@zeonfederated.com>
Fri, 16 Apr 2021 20:01:05 +0000 (22:01 +0200)
committerGitHub <noreply@github.com>
Fri, 16 Apr 2021 20:01:05 +0000 (22:01 +0200)
app/lib/activitypub/activity/flag.rb
app/services/report_service.rb

index 8dfc76f0a6b2957ded35cec6dffd513076cbfcf8..b0443849a6b8b5de0b142759525070adc9e59153 100644 (file)
@@ -10,6 +10,8 @@ class ActivityPub::Activity::Flag < ActivityPub::Activity
     target_accounts.each do |target_account|
       target_statuses = target_statuses_by_account[target_account.id]
 
+      next if target_account.suspended?
+
       ReportService.new.call(
         @account,
         target_account,
index 9d9c7d6c9fc1da60126dcce7e5964ac8ff211b34..bc0a8b46429640f4ce9a2343f7c93c69456504ce 100644 (file)
@@ -10,6 +10,8 @@ class ReportService < BaseService
     @comment        = options.delete(:comment) || ''
     @options        = options
 
+    raise ActiveRecord::RecordNotFound if @target_account.suspended?
+
     create_report!
     notify_staff!
     forward_to_origin! if !@target_account.local? && ActiveModel::Type::Boolean.new.cast(@options[:forward])