about summary refs log tree commit diff
path: root/app/services/activitypub/process_account_service.rb
diff options
context:
space:
mode:
authorThibaut Girka <thib@sitedethib.com>2019-01-19 18:28:37 +0100
committerThibaut Girka <thib@sitedethib.com>2019-01-19 18:28:37 +0100
commit5e0cf92fd145b27053389e5ffcce48da77439713 (patch)
tree27e1567b240f1a3117de595413ccceb9222d8465 /app/services/activitypub/process_account_service.rb
parent530d29148ca0c5bf29f6fa516b1ef4f91d95894b (diff)
parent7c3fddeab4c4ddebca7d5441ac67870aa1cecfe4 (diff)
Merge branch 'master' into glitch-soc/merge-upstream
No conflicts.
Diffstat (limited to 'app/services/activitypub/process_account_service.rb')
-rw-r--r--app/services/activitypub/process_account_service.rb6
1 files changed, 6 insertions, 0 deletions
diff --git a/app/services/activitypub/process_account_service.rb b/app/services/activitypub/process_account_service.rb
index d6c791b44..487456f3a 100644
--- a/app/services/activitypub/process_account_service.rb
+++ b/app/services/activitypub/process_account_service.rb
@@ -33,6 +33,8 @@ class ActivityPub::ProcessAccountService < BaseService
 
     after_protocol_change! if protocol_changed?
     after_key_change! if key_changed? && !@options[:signed_with_known_key]
+    clear_tombstones! if key_changed?
+
     unless @options[:only_key]
       check_featured_collection! if @account.featured_collection_url.present?
       check_links! unless @account.fields.empty?
@@ -209,6 +211,10 @@ class ActivityPub::ProcessAccountService < BaseService
     !@old_public_key.nil? && @old_public_key != @account.public_key
   end
 
+  def clear_tombstones!
+    Tombstone.delete_all(account_id: @account.id)
+  end
+
   def protocol_changed?
     !@old_protocol.nil? && @old_protocol != @account.protocol
   end