From 0e3cc6ba7551effd5396699553fa954aa816b1e8 Mon Sep 17 00:00:00 2001 From: Fire Demon Date: Tue, 1 Sep 2020 19:39:52 -0500 Subject: [Privacy] Purge and re-download remote accounts if their actor key suddenly changes --- app/services/activitypub/process_account_service.rb | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'app/services/activitypub') diff --git a/app/services/activitypub/process_account_service.rb b/app/services/activitypub/process_account_service.rb index f78f8a030..7f17e460c 100644 --- a/app/services/activitypub/process_account_service.rb +++ b/app/services/activitypub/process_account_service.rb @@ -27,7 +27,6 @@ class ActivityPub::ProcessAccountService < BaseService update_account process_tags process_attachments - process_sync else raise Mastodon::RaceConditionError end @@ -36,12 +35,13 @@ class ActivityPub::ProcessAccountService < BaseService return if @account.nil? after_protocol_change! if protocol_changed? - after_key_change! if key_changed? && !@options[:signed_with_known_key] clear_tombstones! if key_changed? + return after_key_change! if key_changed? && !@options[:signed_with_known_key] unless @options[:only_key] check_featured_collection! if @account.featured_collection_url.present? check_links! unless @account.fields.empty? + process_sync end @account @@ -110,7 +110,8 @@ class ActivityPub::ProcessAccountService < BaseService end def after_key_change! - RefollowWorker.perform_async(@account.id) + ResetAccountWorker.perform_async(@account.id) + nil end def check_featured_collection! -- cgit