diff options
author | Claire <claire.github-309c@sitedethib.com> | 2022-02-07 13:14:48 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2022-02-07 13:14:48 +0100 |
commit | 0d2cf3cd4a73ffcf0dfba24ea38be2e36528a4b7 (patch) | |
tree | e3e45df9d3f8231ccbffb91354dd227de04aedf6 | |
parent | 92658f0fb0cf6cb582126f41f7132bde80f77657 (diff) |
Fix errors when multiple Delete are received for a given actor (#17460)
-rw-r--r-- | app/workers/activitypub/processing_worker.rb | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/app/workers/activitypub/processing_worker.rb b/app/workers/activitypub/processing_worker.rb index cef595319..37e316354 100644 --- a/app/workers/activitypub/processing_worker.rb +++ b/app/workers/activitypub/processing_worker.rb @@ -6,7 +6,10 @@ class ActivityPub::ProcessingWorker sidekiq_options backtrace: true, retry: 8 def perform(account_id, body, delivered_to_account_id = nil) - ActivityPub::ProcessCollectionService.new.call(body, Account.find(account_id), override_timestamps: true, delivered_to_account_id: delivered_to_account_id, delivery: true) + account = Account.find_by(id: account_id) + return if account.nil? + + ActivityPub::ProcessCollectionService.new.call(body, account, override_timestamps: true, delivered_to_account_id: delivered_to_account_id, delivery: true) rescue ActiveRecord::RecordInvalid => e Rails.logger.debug "Error processing incoming ActivityPub object: #{e}" end |